ImageVerifierCode 换一换
格式:DOC , 页数:15 ,大小:120KB ,
资源ID:7710261      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/7710261.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(oracle笔记.doc)为本站上传会员【xrp****65】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

oracle笔记.doc

1、单行函数 字符,数字,日期,转换,通用 1,字符 lower() upper() initcap() replace(字段,目标字符,替换字符) substr(字段,开始数字,结束数字)也可以用负 数表示从后面截取 length() 2,数字 round(数字,保留的位数字)四舍五入 trunc(数字,保留的数字)不对数字进行四舍五入 主要是记不住单词名字 mod()求余数 3,日期 日期+数字 该日期后的数字天数 日期-数字 该日期前的数字天数 日期-日期 两日期间的天数(大日期-小日期)? last_

2、day(日期) 该月最后一天 netx_day(日期,星期x) 求出下一个指定星期x的日期 ? select next_day(sysdate,'星期三') from dual; months_between(日期,日期) 两日期间的月份? 求出每个雇员到今天为止雇佣的天数 select ename ,trunc(months_between(sysdate,hiredate)) from emp; add_months(日期,数字) 日期+数字月数 4,转换 to_char()转换成字符,fmyyyy-mm-dd hh24:mi:ss (L)999,99

3、9,999 加L表示当地的钱 to_date() to_date('1987-08-17','yyyy-mm-dd') to_number() 5,通用 nvl(含有null字段,0) decode(字段,‘数字1’,‘名字’,‘数字2’,‘名字2’ ……)想不起来具体的实例 select decode(deptno,'10','十号','20','二十','30','sanshi','40','ywu'),deptno from emp; 限定查询 < ,>, =,<>, between and ,and, or,in,like, Is null,

4、not 关系运算 < 小于 > 大于 = 等于 <> 不等于 判断查询? Between and Between 数值and数值 Between 日期 and 日期 ? 对数字日期也同样适用, 如查在1981年 Select * from emp Where hiredate between ‘01-1月-1981’ and ’31-12月-1981’; 使用在日期上是不太熟悉 And Or 限定范围 In In(数值1,数值2,.数值3……)表示在数值1到数值n的范围中 Not in (数值1,数值2,数值3……)表示不数值1到数值n的范围

5、中 模糊查询 Like |-_可以替换一个 |-%可以替换0,1……n个 空 Null Nvl(数字,0) 表示处理null为零 当字段中包含null是不能使用not null,否则数包漏洞 创建表 Create table 表名(字段1 类型 [default ‘默认名称’], 字段2 类型 [default ‘默认名称’], …… ) 表的复制 Create table 表名称 as (子查询) 复制带数据的 相应子查询为 select * from 表名where 条件; 复制只带表结构的 相应子查询为 select* from 表

6、名 where 不成立的条件(如where 1=2); 只是oracle 数据库支持的操作! 表的重命名 Rename 旧表名称to 新表名称: 没有 table 删除表 Drop table 表名; Flashback (闪回技术)这样删除表并没有删除干净,因为每个用户都有一个回收站 查看回收站; show recyclebin; 还原删除表:falshback table 原表名称 to before drop; 对,主要记不住语法 删除回收站中的表; purge table 表名称;?同样记住不住语法 清空回收站; purge recyclebin; 右上可知删除

7、一个表的方法为: drop table 表名称 purge; 表的截断 删除表中一个字段的数据,还可以使用rollback还原回来,那是因为删除的字段并没有真正提交给后台数据库,只是暂时放到缓存中,截断表就是用来清空缓存,释放空间 Truncate table 表名称; √ 修改表 增加:Alter table 表名称 add(字段1 类型 [default ‘默认名称’], 字段2 类型 [default ‘默认名称’,] …… ) 修改; alter table 表名称 modify (字段1 类型 [default ‘默认名称’], 字段1 类型 [default

8、 ‘默认名称’] ……) 增加和修改表结构不一样 一个仅仅是增加字段, alter table 表名称 add/modify(字段1 类型 [default ‘默认名称, ……) 一个是对表结构的修改 Alter table 表名称 add/drop constraint 约束名称 约束类型 (字段) 例如:增加一个主键约束 Alter table meber add constraint pk_mid primary keyi(mid); 这里的约束名称 位UK/CK/NK/PK/FK_字段名 约束类型为:unique/check/foreig key/prim

9、ary key ( 字段名 ) 这个还是记不清楚啊 约束 NK Not null Create table 表名称(字段1 类型 not null ) ?Not null 与default 的顺序 Not null 与 default 不能同时出现,否者出错 记住 顺序没有记住 UK 唯一约束 ;Unique Create table 表名称(字段1 类型 [default ‘默认名称’] unique, 字段2 类型 [default ‘默认名称’,] Constraint uk_字段 unique(字段) 已经记住unique 这个英文字母 …

10、… ) 如果约束直接放到 字段后则不用加字段,放到最后的话要在约束中加字段 CK 检查约束;cherk Create table 表名 (字段1 类型 [default ‘默认名称’], 字段2 类型 [default ‘默认名称’,] Constraint ck_字段 cherk(字段 in (‘数字1’,‘数字2’,‘数字n’)) …… ) PK 主键约束;primary key Create table 表名(字段1 类型 [default ‘默认名称’], 字段2 类型 [default ‘默认名称’,] Constraint pk_字段 primar

11、y key (字段) …… ) FK 外键约束:forign key Create table 表名(字段1 类型 [default ‘默认名称’], 字段2 类型 [default ‘默认名称’,] Constraint fk_字段 forign key(字段)references 父表名(字段) …… ) 删除主表之前必须要先删除子表 Drop table 子表名; Drop table 父表名; 加入级联设置 删除父表也删除子表 Create table 表名(字段1 类型 not null [default ‘默认名称’], 字段1 类型 no

12、t null [default ‘默认名称’], …… Constraint fk_字段 forign key (字段) references 父表(字段) on delete cascade ) 删除父表设置子表相关字段为 null Create table 表名(字段1 类型 not null [default ‘默认名称’], 字段1 类型 not null [default ‘默认名称’], …… Constraint fk_字段 forign key(字段) references 父表名(字段)on delete set null ) 快速删除

13、字段 Drop table tablename cascade constraint purge: 主要是删除关联的位置没有记清楚 约束条件的修改 ? 这个还是没有记住太清楚 Create table 表名称 ( 字段 类型 [not null/default ‘默认名称’], 字段2 类型2 [not null/default ‘默认名称’] …… Constraint fk_bname Forign key(字段) references 表名(字段) on delete cascade/set null) Drop table bname coscade constrain

14、t purge; Alter table 表名add constraint 约束名称 , 约束类型(字段) Alter table表名 drop constraint 约束名称 这与修改表结构不一样,修改约束是修改CK UK PK FK NK的约束 而修改表结构是修改创建表示的 数据类型,字段名,和默认值 范例 create table test2 ( mid number, name varchar2(10), age number(3)); 增加主键约束 Alter table test2 add constraint pk_mid primary

15、key(mid); 增加检查约束 Alter table test2 add constraint ck_age check(age between 0 and 150); insert into test2 (mid,age,name) values(2,'223','aa2aa'); SQL> select * from test2; MID NAME AGE ---------- ---------- ---------- 1 aaaa 23 查询约束名 数据字典 u

16、ser_constraints User_cons_columms 记不住字母 Owner :用户名 scott Table_name:表名 emp Constraint_name:约束名 pk_empno Columm_name:字段 empno 其中从user_constraints 中找到owner ,table_name,constraint_name 从user_cons_columms 中可以找到 columms 主要是记住几个表 当让也可以记住一个查询语句 Select owner,constraint_name, table_name, columm_nam

17、e from user_cons_columms: 序列 创建序列: Cretae sequence 表名 increment by 增量值 不是increatment start with 开始值 Maxvalue 数值n/noMaxvalue 数值n Minvalue 数值n/noMinvalue 数值n Cycle/nocycle Cache/nocache 主要记不住语法 查询序列: nextval下一个序列,Currval 当前序列 Create sequence mycy; select mycy.nextval from du

18、al; select mycy.currval from dual; 在使用自动增长序列是,都必须提前建立一个序列学列表,序列和表联合起来使用 create sequence 序列名; create table 表名 (id number primary key, name varchar2(10) not null); insert into 表名 (ID,NAME) values (序列名.nextval,'AAA); 创建一个表从10开始每次增长2; Drop sequence myseq; Create sequence myseq increment by 2

19、start with 10; Select myseq.nextval from dual; 创建一个表从1、3、5、7、9循环出现 Error:Create sequence myeseq incretment by 2 start with 1 还是记不住单词 Maxvalue 10 minvalue 1 cycle nocache; Drop sequence myseq; Create sequence myseq increment by 2 start with 1 Maxvalue 10 minvalue 1 cycle nocache; select

20、myseq.nextval from dual; 可以实现从1到9不间断的循环 创建一个表,其编号从1到9不停地循环 Create sequence myseq increment by 2 start with 1 Maxvalue 10 minvalue 1 cycle nocache; create table test (id number not null, name varchar2(10) not null); insert into test(id,name) values(myseq.nextval,'AA'); QL> select * from te

21、st; ID NAME --------- ---------- 1 AA 3 AA 5 AA 7 AA 9 AA 1 AA 3 AA 5 AA 7 AA 连接 Union 并相同部分只显示一个[ju:nen] Union all 并全部 Intersect 相同部分 相交 Minus 不同部分 maines 这个没有记 视图 Create or replayce view 视图名称

22、 as 子查询 With check option/with read only Or replayce 为创建视图时,如果有重复着不创建,没有在创建 With check option限制的是创建视图时使用的条件,然后更新的创建时的条件 Create or replayce view bname as 子查询 With check option/with read only; With check option 限制创建条件和修改条件都是同一个时,不能修改创建条件,但是其他数值是可以修改的 With read only 完全限制视图不能被修改 例如; 创建条件部

23、门20 Create or replace view myview as select * from emp where deptno=20; Update myview set deptno=20; 这样是错误的,创建条件是20部门,更新条件也是部门20 create or replace view myview as select * from emp where deptno=20; 虽然创建条件不能更新,但是其他的条件可以更新 create or replace view myview as select * from emp where sal=9000; Wi

24、th read only 限值视图中的任何值都不允许更新! 如更新公职为9000将会提示错误 create or replace view myview as select * from emp where sal=9000; 如果视图时统计条件创建的,那么视图就字段数值不可能更改的 同义词 创建同义词表Create [public ] synonym 名称 for 用户.表名; 删除同义词表 drop synonym名称; 记不住单词 索引? 用户权限 Grant 授权 Revoke 撤销 需要登录

25、dba创建用户 Conn sys/sys as sysdba; Create user 用户名 identified by 密码; 记不住单词 Grant create session to 用户名; 创建回环给用户 Grant create table to 用户名; 创建表给用户 Grant connect , resource to 用户名;把connect, resource角色给用户 修改用户 Alter user 用户名 identified by 新密码;identifided 确认 Aleter user 用户名 password expire; expir

26、e期满 Alter user 用户名 account lock/unlock;account把什么认为 Grant select ,delete ,update,insert on 查询的用户.表名 to 创建的用户 回收权限 Revoke select,delete,update ,insert on 查询的用户.表名 from创建的用户 Revoke connect ,resource ,create table,create session from 创建的用户; 删除用户 Drop user 用户名 cascade; cascade 少了个s 上机操作 创建一个

27、用户dog 密码wangwang Conn sys/sys as sysdba; create user dog identified by wangwang; 创建一张表myscott,从scott.emp表中的所有信息 create table mydog as selcet * from scott.emp; Grant Revoke Create user 用户名 identified by 密码; Grant create session to 用户名 ; Grant create table to 用户名; Grant conncet ,resource t

28、o 用户名; Alter user用户名 indentified by 新密码; Alter user 用户名 password expire; Alter user 用户名 account lock/unlock; Grant select ,delete,update,insert on 查询的用户.表名 to 用户; 子查询 Select table1.columm, table2.columm from table1 [ cross join table2] [natural join table2] [join table2 using(columm_name

29、)] [join table2 on ( table1.columm.name=table2.columm.name )] [left|right|full outer join table2 on ( table1.columm.name=table2.columm.name)] 1. 交叉连接 Cross join table2 是产生笛卡尔集,有两个及多个记录是相同的,且都存在查询结果中 2. 自然连接 Natural join table2 是自然连接,如果结果中有两个相同的部分,则合二为一,结果中之存在一个 3. JOIN ...USING Join table2

30、 using(columm_name) 4. JOIN...ON Join table2 on(table1.columm_name = table2.columm_name) 例句 Select * from emp join dept on (emp.deptno=detp.deptno); 5. LEFT|RTGHT|FULL OUTER JOIN table2 on (table1.columm.name = table2.columm.name) ===============================================================

31、 限定查询 复习时间12/9/15 1. 关系运算 一个条件 多个条件用and or链接 范例 1 selec* from emp where sal>=1500 and sal<=3000; 范例2 select * from emp where (job =’CLERK’ or job=’ASLESMAN’) and sal>1200; 2. 范围判断 1)对数值有用Between最小值and 最大值 范围判断 2) 对日期同样适用between‘01-12月-1988’and ‘31-12月-1988’ 注意判断日期值的格式为

32、 dd-mm月-yyyy 3. 判断是否为空 is(not)null 空和零是不同的概念 , 4. 指点范围判断 IN (数值1,数值2,数值3……) 范例 select * from emp where empno in (7369.7566,7799) 注意 在in中有null不影响查询结果 但是在not in中有null则不返回任何结果 5. 模糊查询 Like 子句配合使用的匹配字符 .单个字符 _ 表示1个字符 .多个字符% 表示0.1多个字符 %%表示查询全部记录 数据排序 Order by

33、 子句写在所有SQL语句之后, 排序多个字段 排序两种方式 升序asc 默认的排序方式 降序desc 有大到小 多表查询 1)如果数据库量很大时,一般不用多表查询 2)多表查询一般都要取别名,通过别名.字段方式查询 Sql-1999语法 Columm 字段 Select table1.columm,table2.columm from table1[] 交叉查询[cross join table2] 自然查询[natural join table2] Using [join table2 using(字段)] On [j

34、oin table2 on(tabl.字段=table2字段 )] 左右链接查询 [Left|right|full outer join table2 on (tabl.字段=table2字段 )] 统计函数及分组统计 语法: select [distinct] 分组字段1[别名1, 分组字段2 别名2……] 统计函数 From 表名称 Where 判断条件 Grop by 分组字段1,分组字段2 Having 分组后的过滤条件 (可以使用统计函数) Order by 字段 desc|asc; Count()

35、查询表中的数据记录 sum() 求和 avg()求平均值 max() 求最大值 min()求最小值 Count()函数主要功能进行数据的统计,但是在进行数据统计时,如果一张 表中没有数据,也返回记录只不过是0 1) 分组函数可以在没有分组的时候单独使用,可是却不能出现其他的查询字段 分组函数单独使用 Select count(*) from emp; 错误的使用,出现了其他的字段 Select empno,count(*) from emp; 2) 如果现在要进行分组的话,则select 子句之后,只能出现分组的字段

36、和统计函数 正确做法 Select job,count(empno),abg(sal) From emp Group by job; 错误的做法 Select deptno,job,count(empno),abg(sal) From emp Group by job; 3) 统计函数允许嵌套,但是嵌套之后的分组含所的查询之中不能再出现任何的其他字段 正确做法 Select max(avg(sal)) from emp Group by deptno ; 错误做法 Select deptno ,max(avg(sal)) from emp G

37、roup by deptno ; Where和having 区别 Where是在执行group之前进行过滤,即表示全部数据中筛选出部分数据,where 之后不能使用统计函数 Having 是在group by之后对数据再次进行过滤,可以在having 子句中使用统计函数 统计部门平均工资大于1600的人数和部门编号 正确做法,统计函数条件放在having 后, having之后的条件子句可以是统计函数和限定子句 SQL> select deptno ,count(*),avg(sal) 2 from emp 3 group by deptno 4 hav

38、ing avg(sal)> 1600; DEPTNO COUNT(*) AVG(SAL) ---------- ---------- ---------- 20 5 2175 10 3 2916.66667 ================================== SQL> select deptno,count(*),avg(sal) 2 from emp 3 group by deptno 4 having avg(sal)>1600 and

39、 deptno =20; DEPTNO COUNT(*) AVG(SAL) ---------- ---------- ---------- 20 5 2175 错误做法统计函数放在where后 SQL> select deptno ,count(*),avg(sal) 2 from emp 3 group by deptno 4 where avg(sal)> 1600; DEPTNO COUNT(*) AVG(SAL) ---------- ---------

40、 ---------- 20 5 2175 10 3 2916.66667 子查询 子查询可以出现的位置 select ,from,where Select 一般都不会出现 From 多行多列,当作一个表使用 Where 多行多列,多行单列,单行多列 1) 多行多列一般不会出现, 2) 当行多列 只有一行中的几个数值都匹配 3) 单行多列倒是很常见 In (子查询) 等同于in (数值1,数值2……) Any (子查询) 大于any 只要比any中最小的大即可,小

41、于any只要比any中最大值 小即可,等于any与in一样 All (子查询) 大于all必须比最大值大,小于all必须比最小值小 子查询的规定 大部分情况下,如果最终的查询结果中需要出现select子句,但又不能直接使用统计函数的时候,就在自查新中统计信息,即有复杂统计的时候大部分都需要子查询 例如; Select d.deptno,d.dname,d.loc,temp.count,temp.avg From dept d,( S

42、elect deptno dno, count(empno) count,avg(sal) avg From emp Group by deptno ) temp Where d.deptno=temp.dno(+); 红色为查询结果要求的select子句 紫色为子查询中的统计函数 事务处理 Rollback 回滚 Commit 提交 数据伪列 Rownum 行号,它是滚动着改变的 SQL> select * from (select rownum m,deptno from emp where

43、 rownum<10) r 2 where r.m>5; M DEPTNO ---------- ---------- 6 30 7 10 8 20 9 10 rownum和子查询必须有别名,where必须子查询别名。Rownum别名 Rowid 物理块号 例如AAAL+XAAEAAAAANAAA 四部分组成 数据对象号AAAL+X 相对文件号 AAE

44、 数据块号 AAAAAN 数据行号AAA Delete from dept where rowid not in( Select min(rowid) from dept Group by dname,loc); 按照dname和loc排列得到最小的rowid,并删除不在这些最小的rowid中的数据 索引 两种方式创建 主键约束:如果一张表中的列上存在了主键约束的话自动创建索引 手工创建:在莫一个操作列上指定一个索引 Create index emp_sal_ind on emp (sal); 数据库备份 数据库冷备份 1)控制文件 v$controlfile 2)日志文件 v$logfile 3)数据文件v$datafile v$tablespace 4)核心操作的配置文件(pfile) 通过 show parameter pfile

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服