Oracle召回
后几集录制视频,记录在记录开始的时候不知道怎么,录了几集没有什么,够又一次录,过程中也也把Oracle数据库这部分看了一遍,收获也挺多的,学习是反复积累的过程,对于一些零散的知识点又回想了一下,又一次复习一遍当中有些已经学过,有些不过有一点点印象,记得有一句话叫做“一本书只要当中有一句话对你非常有帮助,那么它是有价值的”,看完这个视频也学习和加深了一些知识的离家。并总结例如以下。大家能够作为參考。
数据库理解
计算机就如同我们的身体各个部分,数据库=大脑,五官=编程语言,血液=数据总线,操作系统=人体。
在大脑里面存储着各种信息,通过我们的眼、耳等五官输入到我们的大脑里面。因此五官就像我们平时使用的各种编程语言,而操作系统就好比我们的身体支撑着我们个个部分的结构完整,保证它们可以正确执行。计算机和我们的身体是一样的。大同小异。毕竟是人发明了电脑。
Oracle用户
超级管理员sys/chage_on_install
普通管理员system/manage
普通用户scott/triger
Oracle中的函数
单行函数
字符函数
substr(),截取字符串
数字函数
round()随机函数
mod()取摸函数
日期函数
Sysdate()取得当前日期
对于日期。加减一个数,等于若干天之后或之前的一个日期
转换函数
to_char(),To_char('12345678'.'999,999')
to_date(),比如To_date(SYSDATE,'yyyy-mm-dd')
通用函数
NVL(),将一个null的字段值变为0,比如select NVL(name,0) from table1 ,假设name为null时,将输出0而不是null
decode(),推断一个字段等于多少。然后。输出多少,比如上面name=1.输出张三;name=2输入李四
多表查询
一般超过两个表一起查询就会差生笛卡尔积的现象。查询出来的结果为两个表的记录数乘机,我们须要利用等值条件消除笛卡尔积。仅仅是查询出来的结果进行了消除,可是从本质上看并没有消除,还是有笛卡尔积的现象。因此,并不建议使用多表查询,多表查询影响查询效率,尤其是在多表大数据查询时更不建议使用联合查询,
在真正的大数据系统中 通常在查询数据之前。须要先看一下里面有多少数据,仅仅查询出自己想要的数据就可以。
分组查询
对于复杂的SQL语句须要自己多练习才干够灵活掌握。并想它们之间的关系和每一个SQL语句的作用,随着使用的加深会对每一个SQL语法理解更深刻,假设再出现类似的查询会出现的思路变多。
查询时PS:
1. 通常子查询写在from或wherekeyword之后;作用是形成新的表和结果集,能够从新的结果集中查询或得到条件。
2.where条件在group by之前运行,即先进行条件过滤,把过滤后的结果依照某一个字段进行分组。
3.假设分组之后还须要对结果进行过滤,那么就得使用HAVING字段设置过滤条件了。
4.排序关键系ORDER BY在SQL语句的最后运行。
仅仅要记住这几个原则。再加上多多练习复杂一些的查询,SQL语句应该是没有什么问题的,再难的查询也只是是这些单词的拼接和组合。
序列的使用
曾经也听说过序列。可是自己没用过。
由于总认为非常麻烦,所以没有使用过。这次项目中用到了,并且视频也讲到了,才发现,非常easy非常有用。
语法:
CREATE SEQUENCE myseq
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1開始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加。不循环
CACHE 10;
使用的时候,比如插入。仅仅用在相应的列赋值myseq.NEXTVAL就可以。
比如
INSERT INTO emp VALUES (myseq.nextval, 'LEWIS');
事务处理
对于操作数据库的每一次连接。它是同数据库建立了一个session,即一个会话这个会话尽管不是web层的会话但同那个会话也非常类似,在一个session中对数据库进行各种操作即是在同一个事务中。这样的事物是本地事务。假设是更新操作上一个事物没有更新完毕,下一个事物不能进行提交和操作。由于在更新的时候数据库会自己主动枷锁,知道更新操作完毕才会释放锁。
数据伪列
指的不是我们设计数据库的人自己加入的列,而是隐含的列我们能够使用,Oracle中常见的两个伪列为ROWNUM、ROWID,经经常使用到的是ROWNUM这个列,ROWID为记录的物理地址。我们能够利用这一点实现分页效果,看以下代码
Select * from(select ROMNUM rm,id whereROMNUM<=10) temwhere
tem>5
ROWNUM;每次查询都变不固定
ROWID:数据记录的物理地址
闪回技术
从Oracle10g之后的数据库都提供了闪回技术,相当于一个回收站的功能,删除的数据或者表什么的能够从回收站里面找回来,这个功能在有时候挺有用的,值得我们去了解了解。
简单命令:
查看回收站里面内容show recyclebin
找回删除的表:Flashback table tablename to before drop
清空回收站:Purge recyclebin
约束
非空
一个字段不能为空,not null
唯一性
该约束是对某个详细字段而言,将某个字段设为唯一则该字段不会出现反复记录,但要记住null是能够的,仅仅要不反复即可。
主键
主键=非空+唯一性
外键
假设一个表的主键再还有一个表中当做外键,那么这个键就是外键约束,外键和主键约束是同一时候存在的。
检查
即对一个字段做一些限制,比如性别:在数据库中限制仅仅能输入男或女。
联合查询
连接两个表的查询结果
Union:联合查询,同样的部分不显示
Union all:同样的部分显示
Intsersect:仅仅显示同样的部分
Minus:仅仅显示不同部分
视图
第一类 on with check option
这样的视图是待查询条件的视图,能够更新,可是不能更新查询条件
第二类 with read only
该视图为仅仅读的。不能够对该视图中的不论什么一个字段
索引
索引的主要功能就是用于提升数据库的操作性能。
Select * from table1 where id>10000
i. 上面的语句是逐行进行推断。没有加索引
ii. 加索引之后会对加索引的那列,二叉树排列,例如以下
1)
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlsb25nc2hlbmcxMTI1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
2) 再运行上面语句,仅仅查询部分记录
3) 假设某列是主键约束,则自己主动建立索引
4) 手工创建,在某一个列上建立
iii. 这样的索引有一个问题。即:假设想要性谁能提高,则必须维持以上的这棵树,假设数据须要频繁改动的话。则代码性能会下降。
iv. 所以,一般索引仅仅使用在不会频繁改动的表中。而假设一张表上频繁改动数据切又使用索引,性能会减少。所以。性能提升永远是相对的。
v. 这样的所以是Oracle十几种索引中的一种。也是最简单一种称为:B树索引。
还有位图索引、函数索引等
数据库备份
在上线的项目中,数据库备份是非常重要的一个工作。
导入导出
冷备份
先把数据库停止执行了。再进行备份,类似于热插拔。
数据库监听
1.监听client连接
监听为数据库实例服务,当用户第一次登陆实例时先通过监听。再连接,第二次连接就不通过监听了
b. Oracle開始没有在window上,后来移植到了window所以,提供监听了
c. 当安装到window上之后,适应了些window操作习惯,能够傻瓜登陆,window模式
e. 监听须要推断是普通用户登录还是sysdba登录,假设是普通用户就去数据库验证;假设是dba就是password文件或操作系统验证
f. 操作系统验证
i. 对于DBA。首先是操作系统验证,所以。不写password或则随便写都能够登录。由于他是操作系统用户
1) 假设把操作系统认证 取消,则进行password文件验证。再不写password就不行了
2.管理实例
多个数据库实例能够同一时候注冊到一个监听器上。它们把自己的实例名等參数信息在监听器注冊。当client连接监听器时就能够通过这些參数来找到数据库实例,在client与实例之间实现了一个桥梁的作用。
3.负载均衡
一个小小的监听器具有均衡client连接的作用。假设有一个实例的连接数量很的多,那么监听器会自该倡议已转移到连接的另一部分超过上面的例子。
版权声明:本文博客原创文章。博客,未经同意,不得转载。
Oracle召回的更多相关文章
- oracle数据库入门
oracle 数据库入门. 1.数据 2.数据存储的地方:变量 数组 容器 (内存中),文件,数据库(文件) 3.数据库系统:sqlserver 2000 2005 2008 mysql 5 ...
- 转 Oracle全文检索http://docs.oracle.com/cd/E11882_01/text.112/e24436/toc.htm
SQL > exec ctx_ddl.create_preference ('my_test_lexer','chinese_lexer') : PL/SQL 过程成功完成 SQL > E ...
- Oracle分析函数入门
一.Oracle分析函数入门 分析函数是什么?分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计 ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...
- Oracle 的基本操作符
!= 不等于 select empno,ename,job from scott.emp where job!='manager' ^= 不等于 select empno,ename,job from ...
- 使用Zabbix监控Oracle数据库
Orabbix介绍 监控Oracle数据库我们需要安装第三方提供的Zabbix插件,我们先测试比较有名的Orabbix,http://www.smartmarmot.com/product/orabb ...
- 基于Oracle安装Zabbix
软件版本 Oracle Enterprise Linux 7.1 64bit Oracle Enterprise Edition 12.1.0.2 64bit Zabbix 3.2.1 准备工作 上传 ...
- Oracle Database 12c Data Redaction介绍
什么是Data Redaction Data Redaction是Oracle Database 12c的高级安全选项之中的一个新功能,Oracle中国在介绍这个功能的时候,翻译为“数据编纂”,在EM ...
随机推荐
- Linux下kill进程脚本
Linux下kill进程脚本 在Linux有时会遇到需要kill同一个程序的进程,然而这个程序有多个进程,一一列举很是繁琐,使用按名字检索,统一kill Perl脚本 使用方法 kill_all.pl ...
- Python 语法细节(Python 2.x 与 Python 3.x 语法差异)
Language differences and workarounds 查询 Python 语言版本: >> import sys >> sys.version '3.5.2 ...
- C#+HtmlAgilityPack
C#+HtmlAgilityPack—糗事百科桌面版V2.0 最近在浏览以前自己上传的源码,发现在糗事百科桌面端源码评论区中,有人说现在程序不能用了.查看了一下源码运行情况,发现是正则表达式解析问 ...
- Android 5.0中使用JobScheduler
在这篇文章中,你会学习到在Android 5.0中怎样使用JobScheduler API. JobScheduler API同意开发人员在符合某些条件时创建运行在后台的任务. 介绍 在Android ...
- 【u031】租用游艇
Time Limit: 1 second Memory Limit: 128 MB [问题描述] 长江游艇俱乐部在长江上设置了n 个游艇出租站1,2,-,n.游客可在这些游艇出租站租用游艇,并在下游的 ...
- 微信小程序从零开始开发步骤(一)
从零到有写一个小程序系列专题,很早以前就想写来分享,但由于项目一直在进展,没有过多的时间研究技术,现在可以继续分享了.1:注册用没有注册过微信公众平台的邮箱注册一个微信公众号, 申请帐号 ,点击 ht ...
- C语言编写静态链接库及其使用
本篇讲述使用C语言编写静态链接库,而且使用C和C++的方式来调用等. 一.静态库程序:执行时不独立存在,链接到可执行文件或者动态库中,目标程序的归档. 1.用C编写静态库步骤 a.建立项目(Win32 ...
- Redis学习笔记4-Redis配置具体解释
在Redis中直接启动redis-server服务时, 採用的是默认的配置文件.採用redis-server xxx.conf 这种方式能够依照指定的配置文件来执行Redis服务. 依照本Redi ...
- 百度UEditor上传图片-再再总结一次
本周,CSDN有个网友遇到了百度UEditor上传问题,最后商定付50元钱,我帮他解决这个问题. 他最初想自己搞定这个问题,结果搞了好多次,好几天,还是没能解决. 2015年1月17日8: ...
- 监控Nginx服务的Shell脚本
Nginx 虽然处理并发量比 apache 确实要强点,但它这种 php-cgi 模式不是太稳定,这点网上也有朋友总结了,我在实现项目中也感受到了. 我们一台支付机,偶尔会出现以下情况的:php-cg ...