《财经《Oracle数据库》实验报告.doc》由会员分享,可在线阅读,更多相关《财经《Oracle数据库》实验报告.doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验报告 河南财经政法大学计算机与信息工程学院2012年-2013年 第二学期专 业: 课程名称: Oracle数据库 班 级: 姓 名: 学号: 实验一 数据库和表空间管理实验目的(1)了解数据库的结构以及一些基本概念(2)掌握使用DBCA创建数据库(3)了解使用SQL语句手工创建数据库(4)掌握使用OEM和SQL语句管理表空间实验内容(1)启动DBAC,利用DBCA创建数据库ORCL,并删除数据库ORCL(2)启动OEM,创建本地管理方式自动分配区间的表空间DATA01,其中数据文件的名称为data01.dbf,大小为10M。(3)启动SQL * Plus,用PL/SQL使用create
2、tablespace语句创建本地管理方式,区间尺寸为256k的表空间DATA02,其中数据文件的名称为data02.dbf,大小为12M。(4)使用alter tablespace语句在本地管理表空间DATA02中增加数据文件data03.dbf,大小为8M,自动增长。(5)使用SQL语句改变数据文件data03.dbf的大小为10M。(6)使用drop tablespace语句删除表空间DATA02及其包含的段和数据文件。(7)使用OEM和语句创建重做日志组,组号为4,并且包含两个重做日志文件log1d.log和log2d.log,给出其绝对路径,大小为5000k。实验数据记录及分析(或程序
3、及运行结果)评语: 日期:2013年 月 日实验二 创建和管理表实验目的(1)掌握OEM中创建表的方法(2)掌握使用SQL语句创建表(3)掌握OEM中修改、删除表的方法(4)掌握使用SQL语句修改、删除表的方法实验内容(1)启动OEM,在OEM中创建学生信息表XS、课程信息表KC和学生成绩表XS_KC(2)启动SQL * Plus,用PL/SQL创建员创建学生信息表XS、课程信息表KC和学生成绩表XS_KC(3)在OEM中,为XS表增加SFZH列,字符型,长度18,唯一约束(4)利用SQL语句, 在XS表上增加一个class字段,使class字段只能取值为(1,2,3,4,5,6);(5)删除
4、KC表,能否删除?为什么?怎么解决?学生信息表XS列名数据类型大小小数位是否为空默认值约束含义XHchar6否主键学号XMvarchar220否姓名ZYMvarchar210专业XBchar2男性别CSSJdate出生时间ZXFnumber2总学分BZvarchar2100备注课程信息表KC列名数据类型大小小数位是否为空默认值约束含义KCHchar3否主键课程号KCMvarchar220否课程名KKXQnumber1118开课学期XSnumber2学时XFnumber1学分学生成绩表XS_KC列名数据类型大小小数位是否为空默认值约束含义XHchar6否主键,外键学号KCHchar3否主键,外键
5、课程号CJnumber3学分实验数据记录及分析(或程序及运行结果)评语: 日期:2013年 月 日实验三 表数据的插入、修改和删除实验目的(1)掌握用PL/SQL语句对数据库表进行插入、修改和删除数据的操作(2)理解数据更新操作时要注意数据的完整性(3)理解PL/SQL语句对表数据操作的灵活控制功能实验内容(1)利用PL/SQL的INSERT INTO命令向学生信息表XS、课程信息表KC和学生成绩表XS_KC添加数据,其数据内容参考下表。(2)利用PL/SQL的UPDATE命令修改表数据:l 在数据表XS中,将学号(XH)为“”同学的专业(ZYM)改为“通信工程”;l 在数据表XS_KC中,将
6、成绩(CJ)小于70分的所有同学成绩置空;l 在数据表XS_KC中,将计算机系的学生成绩增加10分;(3)利用PL/SQL的DELETE命令删除数据表XS中所有备注(BZ)为空的记录。(4)利用PL/SQL的DELETE命令删除数据表XS_KC中所有男生的成绩记录。(5)如果要将“王林”的学号改为“”,SQL语句怎么写?能不能修改成功?为什么?(6)如果要删除“王林”的基本信息数据,SQL语句怎么写?能不能删除成功?为什么?怎么解决?学生信息表(XS)数据XHXMZYMXBCSSJZXFBZ王林计算机男1986-02-1050程明计算机男1987-02-0150王燕计算机女1985-10-06
7、50韦严平计算机男1986-08-2650李方方计算机男1986-11-2050李明计算机男1986-05-0154提前修完数据结构,并获学分林一帆计算机男1985-08-0552已提前修完一门课张强民计算机男1984-08-1150张蔚计算机女1987-07-2250三好生赵琳计算机女1986-03-1850严红计算机女1985-08-1148有一门功课不及格,待补考06120l王敏通信工程男1984-06-1042王林通信工程男1985-0l-2940有一门功课不及格,待补考王玉民通信工程男1 986-03-2642马琳琳通信工程女1984-02-1042李计通信工程女1985-09-20
8、42李红庆通信工程女1985-05-0l44提前修完一门课,并获学分孙祥欣通信工程女1984-03-0942孙研通信工程男1986-10-0942课程信息表(KC)KCHKCMKKXQXSXF101计算机基础1805102程序设计语言2684206离散数学4684208数据结构5684209操作系统6684210计算机原理7855212数据库原理7684301计算机网络7513302软件工程7513学生成绩表(XS_KC)XHKCHCJXHKCHCJXHKCHCJ1018010178061l1120676102781028010l6306110l206762066810279101621018
9、520660102701026410l8020681206871016510l9010l66101871028410283101912066520670101761027810l9510181206781029010170实验数据记录及分析(或程序及运行结果)评语: 日期:2013年 月 日实验四 数据库的查询实验目的 (1)掌握SELECT语句的基本语法(2)掌握子查询的表示(3)掌握连接查询的表示(4)掌握数据汇总的方法(5)掌握SELECT语句的GROUP BY子句的作用和使用方法(6)掌握SELECT语句的ORDER BY子句的作用和使用方法实验内容针对ORCL数据库中的数据表,完成下
10、列查询。(1)SELECT基本使用l 查询每个同学的所有数据。l 查询学号为“”同学的姓名、性别和专业。l 查询每个女同学的姓名、性别,并将结果中各列的标题指定为姓名和性别;l 查询所有其姓名含有“阳”的同学的专业、性别;l 查询课程编号“101”,且成绩在7080之间的同学的学号;(2)嵌套查询l 查询选修“101”课程的同学的学号、姓名和专业信息;l 查询没有选修“101”课程的同学的学号、姓名和专业信息;l 查询比通信工程专业的同学总学分都高的同学学号、姓名和专业信息;l 查询平均成绩高于80分的同学的学号、姓名、性别和专业;(3)连接查询l 查询每个同学的学号、姓名、课程名和成绩信息;
11、l 查询总学分大于48分的同学姓名和其选课情况(包括课程名称、学时和成绩);(4)数据汇总l 查询计算机专业同学总学分的平均分;l 查询全体同学的总学分的学最高分和最低分;l 查询计算机专业同学总人数;l 查询学号为“”同学的各门课程总分;(5)GROUP BYl 查询每个专业的总人数;l 查询每位同学的平均分;(6)ORDER BYl 查询每个同学的学号、姓名、课程名和成绩信息,并按成绩由低到高排列输出;实验数据记录及分析(或程序及运行结果)评语: 日期:2013年 月 日实验五 视图和索引实验目的(1)了解视图的重要性(2)掌握视图的建立(3)掌握视图的使用(4)掌握索引的使用方法(5)掌
12、握索引的概念及分类实验内容(1)使用PL/SQL语句CREATE VIEW命令创建下列视图:l 视图view_female,包含学生信息表中所有女生信息;l 视图view_count,包含每个专业的名称和学生人数信息;l 视图view_sum,包含每个同学的学号、姓名、课程总成绩信息;l 视图view_score,包含每个同学的学号、姓名、课名,成绩信息;(2)使用PL/SQL语句DROP VIEW命令删除视图view_female。(3)在SQL Plus中,通过视图,执行下列操作:l 查询“计算机”专业的学生人数;l 查询学号“”同学的所选课程和课程成绩信息l 通过视图view_femal
13、e,插入一个女同学的信息l 通过视图view_score,删除的信息,能否删除?(5)在OEM中建立索引:l 对课程信息表KC的KCM列创建索引idx_kcm;l 对学生表XS的XH、XM列创建唯一索引idx_xhxm;(6)使用PL/SQL命令CREATE INDEX建立以上两个索引(7)通过数据字典查看XS表的索引信息实验数据记录及分析(或程序及运行结果)评语:日期:2013年 月 日实验六 用户、角色管理实验目的 (1)掌握数据库的安全性能(2)掌握使用用户实现数据库安全性的方法(3)掌握使用角色实现数据库安全性的方法实验内容(1)利用CREATE USER语句,在数据库中创建用户MAN
14、AGER,授予DBA角色和SYSDBA系统权限。(2)利用CREATE USER语句,在数据库中创建用户USER1,授予查询XS表的对象权限和创建表的系统权限。(3)利用CREATE ROLE语句,在数据库中创建角色ADMIN,授予DBA角色和修改表和删除表的权限。(4)利用user1连接数据库,验证其权限。实验数据记录及分析(或程序及运行结果)评语: 日期:2013年 月 日实验七 备份和恢复实验目的 (1)掌握备份的使用方法(2)掌握恢复的使用方法(3)掌握闪回的使用方法实验内容(1)利用Expdp 命令,对ORCL数据库导出scott方案中的emp、dept表。(2)利用impdp命令,
15、使用步骤1导出的转储文件,对ORCL数据库导入emp、dept表。(3)练习数据库闪回技术。实验数据记录及分析(或程序及运行结果)评语: 日期:2013年 月 日实验八 PL/SQL编程实验目的(1)掌握变量的分类及使用(2)掌握各种运算符的使用(3)掌握各种控制语句的使用(4)掌握系统函数及用户自定义函数的使用(5)游标的使用实验内容(1)创建函数get_score(xh,kch),返回某个学生某门课的成绩,要求成绩转换为五级制。(2)调用函数get_score。(3)练习游标的用法。按下列格式输出学生的成绩: 王林:计算机基础 90程序设计语言 80 程明:计算机基础 56程序设计语言 74实验数据记录及分析(或程序及运行结果)评语: 日期:2013年 月 日实验九 存储过程和触发器的使用实验目的 (1)掌握存储过程的意义(2)掌握存储过程的使用方法(3)掌握触发器的意义(4)掌握触发器的使用方法实验内容(1)利用CREATE PROCEDURE创建存储过程,使其能够完成向学生信息表中添加记录信息,添加时需判断该学生信息是否存在。并调用所建立的存储过程,对学生信息表中添加记录信息。(2)利用CREATE TRIGGER创建触发器,完成XS_KC表的XH列和XS表的XH列的参照完整性规则。实验数据记录及分析(或程序及运行结果)评语: 日期:2013年 月 日
限制150内