oracle自学总结

上传人:第*** 文档编号:38741092 上传时间:2018-05-07 格式:DOCX 页数:10 大小:15.09KB
返回 下载 相关 举报
oracle自学总结_第1页
第1页 / 共10页
oracle自学总结_第2页
第2页 / 共10页
oracle自学总结_第3页
第3页 / 共10页
oracle自学总结_第4页
第4页 / 共10页
oracle自学总结_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《oracle自学总结》由会员分享,可在线阅读,更多相关《oracle自学总结(10页珍藏版)》请在金锄头文库上搜索。

1、1、针对 oracle 数据管理 针对各种类型,如 index,table,view,SYNONYM,comments 等 objects 都有各自对应的管理表,如 all_indexs user_indexs dba_indexs 等字段其中 tab 表,主要管理当前用户下(及 user)下的 table,view,及 synonym 信息左右连接另外写法 select * from cr_corp_inf,cr_xd where cr_corp_inf.cifno=cr_xd.cifno(+); select * from cr_corp_inf,cr_xd where cr_corp_i

2、nf.cifno(+)=cr_xd.cifno;没有(+)内容需要全部展现同义词create synonym du for dual;创建同义词成功后, 可以照常在同义词上 update,insert,select 内容。同样可以在同一词上面创建索引。 其索引其实是建在真正表上面。删除表时,该表上的索引系统会一同被 drop 掉。但 synonym 不会被自动 drop 掉。需要用 户自己 drop表上创建约束条件create table parts ( pcode char(2) primary key, pname varchar2(10) not null, color varchar2

3、(10) constraint jk check( color in (RED,CREEN,BLUE), QQH number(4) , ROL number(4), City varchar2(15) not null, Weight number(2);- create table orders( Orderno number(2) primary key,Scode char(2) constraint jk1 references supplier(scode),pcode char(2) constraint jk2 references parts(pcode),qty_suppl

4、ied number(4) constraint jk3 check(qty_supplied =0),order_date date);-说明,此 references 约束条件中。则 supplier 或者 parts 表中的 scode 或者 pcode 必须为 primary key 唯一主键的前提下, -该约束条件才能建立成功,不然会报此列表的唯一关键字或者主键不匹配的错误create table price(scode char(2),pcode char(2),price number(7,2),primary key (scode,pcode);-联合主键删除主键命令 alte

5、r table parts drop constraint jk; alter table parts add constraint jk check (color in (RED, GREEN,BLUE);-存储过程重定向输出到某个文件或者 log 日志 -先修改或添加 init.ora 的 UTL_FILE_DIR 参数 例如: utl_file_dir=G:oracletemp declare file_handle UTL_FILE.FILE_TYPE; begin file_handle := UTL_FILE.FOPEN( /tmp , 文件名 , w ); UTL_FILE.PU

6、TF(file_handle, 写入的信息n ); UTL_FILE.FCLOSE(file_handle); Exception WHEN utl_file.invalid_path THEN raise_application_error(-20000, ERROR: Invalid path for file or path not in INIT.ORA. ); end; -PutF()过程用来以指定格式把文本写入一个文件 -Put_Line()过程把一个指定的字符串写入文件并在文件中开始新的一行 在 pl-sql 下面打开 dbms_output.put_line()命令 set s

7、erveroutput on; set serveroutput off;-存储过程或者程序快中循环的使用 declarev_empno number(4);beginselect max(empno)+1 into v_empno from emp;for i in 1.100 loopinsert into emp(empno) values (v_empno+i);end loop;commit;end;-接受两个数相除并且显示结果。如果第二个数为 0,-则显示消息“didnt your mother tell you not to dibide by zero;declarex num

8、ber(4);y number(4);z number(4);beginx:=y:=z:=x/y;exceptionwhen zero_divide then -dbms_output.put_line(didnt your mother tell you not todivide by zero);end;-编写一个 PL/SQL 程序块以提升两个资格最老的“职员“为 -“高级职员“;declarecursor c1 is select * from emp order by hiredate;beginfor rec in c1 loopupdate emp set job=MANAGER

9、 whereempno=rec.empno;exit when c1%rowcount=2; -end loop;commit;end;-编写一个 PL/SQL 程序块,对所有雇员按他们基本薪水的 10%给他们加薪.如果所增加的薪 水大于 5000 卢布,则取消加薪。declarecursor c1 is select * from emp order by hiredate;beginfor rec in c1 loopif rec.sal*0.1 5000 thennull; -elseupdate emp set sal=sal+sal*0.1 whereempno=rec.empno;

10、end loop;commit;end;-如果薪水在此范围内,则显示消息“Salary is ok“,否则,-更新薪水为该范围内的最小值.create or replace function test_function(vempno number) return number isv_job varchar2(12);v_hig number;v_low number;v_sal number;beginselect job,sal into v_job,v_sal from emp where empno=vempno;if v_job=CLERK thenv_low :=1500;v_hi

11、g :=2500;end if;if v_job=SALESMAN thenv_low :=2501;v_hig :=3500;end if;if v_job=ANALYST thenv_low :=3501;v_hig :=4500;end if;if v_job not in (CLERK,SALESMAN,ANALYST) thenv_low :=4500;end if;if v_sal =v_low and v_sal17 thenraise_application_erro(-20011,sorry); -end if;end;-编写一个数据库触发器以检查某个组织中不能有两个总裁.c

12、reate or replace trigger triafter insert or update on empdeclaren1 number;beginselect count(job) into n1 from emp where job=PRESIDENT;if n1 1 thenraise_application_error(-20011,PRESIDENT IS EXISTS); -并不会真正插入。因为没有 commitend if;end;-编写一个数据库触发器,当任何时候某个部门从“dept“中删除时,该触发器将从“emp“表中 删除该部门的所有雇员.create or replace trigger tribefor delete on deptfor each rowbegindelete emp where deptno=:old.deptno; -end;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号