Oracle数据库基础及应用实验八.doc

Oracle数据库基础及应用实验八.doc

ID:58821051

大小:844.00 KB

页数:6页

时间:2020-10-25

Oracle数据库基础及应用实验八.doc_第1页
Oracle数据库基础及应用实验八.doc_第2页
Oracle数据库基础及应用实验八.doc_第3页
Oracle数据库基础及应用实验八.doc_第4页
Oracle数据库基础及应用实验八.doc_第5页
资源描述:

《Oracle数据库基础及应用实验八.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验8Oracle数据库综合练习一.实验目的(1)熟悉SQL*PLUS常用命令的功能和使用方法(2)掌握SQL语言中查询语句的功能和使用方法(3)学会对ORACLE数据表进行用户权限等相关数据控制命令。。二.实验内容1.创建和修改表(1)登录scott账户,建立一个表(表名自定),表结构与EMP相同。createtablemy_empasselect*fromemp;(2)用INSERT语句输入1条记录,并提交。insertintomy_empvalues(200,'Winty','CLERK',300

2、,to_date('6-20-2014','mm-dd-yyyy'),1500,500,40);commit;(3)建立一个与DEPT表结构和记录完全相同的新表,并与前项新表建立参照完整性约束。createtablemy_deptasselect*fromdept;altertablemy_deptaddconstraints1primarykey(deptno);altertablemy_empaddconstraints2foreignkey(deptno)referencesdept(deptno

3、);(4)对在'BOSTON'工作的雇员加工资,每人加200。updatemy_empsetsal=sal+200wheremy_emp.deptnoin(selectdeptnofrommy_deptwheremy_dept.loc='BOSTON');2.查询技术(1)查询部门号为40的所有人员。select*frommy_empa,my_deptbwherea.deptno=b.deptnoandb.deptno=40;(2)建立一个视图v_my_emp,视图包括my_emp表的empno、ena

4、me、sal,并按sal从大到小排列。createviewV_my_empasselectempno,ename,salfromemporderbysaldesc;(3)在my_emp表中建立ename的唯一性索引。altertablemy_empaddconstraintsfdsunique(ename);测试截图如下:3.计算emp表中COMM最高与最低的差值,COMM值为空时按0计算。Declarevar1number;var2number;val_commnumber;beginselectma

5、x(nvl(comm,0))intovar1fromemp;selectmin(nvl(comm,0))intovar2fromemp;val_comm:=var1-var2;dbms_output.put_line(val_comm);end;4.插入my_emp表中的数据记录,考虑可能出现的例外,并提示。(主要的例外提示:唯一性索引值重复DUP_VAL_ON_INDEX)Begininsertintomy_empvalues(7369,'winty','CLERK',7902,to_date('17

6、-12-80','dd-mm-yy'),800,NULL,20);exceptionwhenDUP_VAL_ON_INDEXthendbms_output.put_line('记录重复');whenothersthennull;end;5.在my_emp表中利用简单循环统计并输出各个部门的平均工资(用游标来完成)DECLARECURSORc_dept_statISSELECTdeptno,avg(sal)avgsalFROMmy_empGROUPBYdeptno;v_deptc_dept_stat%RO

7、WTYPE;BEGINOPENc_dept_stat;LOOPFETCHc_dept_statINTOv_dept;EXITWHENc_dept_stat%NOTFOUND;DBMS_OUTPUT.PUT_LINE(v_dept.deptno

8、

9、''

10、

11、v_dept.avgsal);ENDLOOP;CLOSEc_dept_stat;END;6.建立一个存储过程,根据输入的部门编号输出该部门的名称和位置,如果部门不存在,提示'不存在该部门!'信息。创建存储过程:CREATEORREPLACEPROCEDU

12、REget_dept(p_deptnomy_dept.deptno%TYPE,dnameOUTmy_dept.dname%TYPE,locOUTmy_dept.loc%TYPE)ISBEGINSELECTdname,locINTOdname,locFROMmy_deptWHEREdeptno=p_deptno;EXCEPTIONWHENNO_DATA_FOUNDTHENdbms_output.put_line('不存在该部门!');END;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。