安工大数据库系统概论实验报告

上传人:飞*** 文档编号:47477057 上传时间:2018-07-02 格式:PDF 页数:57 大小:6MB
返回 下载 相关 举报
安工大数据库系统概论实验报告_第1页
第1页 / 共57页
安工大数据库系统概论实验报告_第2页
第2页 / 共57页
安工大数据库系统概论实验报告_第3页
第3页 / 共57页
安工大数据库系统概论实验报告_第4页
第4页 / 共57页
安工大数据库系统概论实验报告_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《安工大数据库系统概论实验报告》由会员分享,可在线阅读,更多相关《安工大数据库系统概论实验报告(57页珍藏版)》请在金锄头文库上搜索。

1、Oracle9i上机操作指南安徽工业大学计算机学院1/10 各表的数据结构和数据如下:1 学生情况表 Student 主关键字: SNO 非空字段: SNAME ,SDEPT ,SCLASSSNO(C,5) 学号SNAME(C,10) 姓名SDEPT(C,2) 系SCLASS(C,2) 班级SSEX(C,2) 性别SAGE(N,2) 年龄96001 马小燕 CS 01 女 21 96002 黎明 CS 01 男 18 96003 刘东明 MA 01 男 18 96004 赵志勇 IS 02 男 20 97001 马蓉 MA 02 女 19 97002 李成功 CS 01 男 20 97003

2、黎明 IS 03 女 19 97004 李丽 CS 02 女 19 96005 司马志明 CS 02 男 18 2 课程名称表Course 3 教师授课表Teach CNO(C,3) 课程号CNAME(C,16) 课程名称CTIME(N,3) 学时数TNAME(C,8) 教师姓名TSEX(C,2) 性别CNO(C,3) 课程号TDATE 授课日期TDEPT(C,2) 系001 数学分析 144 王成刚男 004 1999.9.5 CS 002 普通物理 144 李正科男 003 1999.9.5 CS 003 微机原理 72 严敏女 001 1999.9.5 MA 004 数据结构 72 赵高

3、男 004 1999.9.5 IS 005 操作系统 64 李正科男 003 2000.2.23 MA 006 数据库原理 64 刘玉兰女 006 2000.2.23 CS 007 DB_Design 48 王成刚男 004 2000.2.23 IS 008 程序设计 56 马悦女 008 2000.9.6 CS 王成刚男 007 1999.9.5 CS 主关键字: CNO 候选关键字: CNAME 主关键字: TNAME ,CNO ,TDEPT 参照关系: Course(CNO)4 成绩表 Score 主关键字: SNO ,CNO 参照关系: Student(SNO) ,Course(CNO

4、)SNO(C,5) 学号CNO(C,3) 课程号SCORE(N,5,2) 分数SNO(C,5) 学号CNO(C,3) 课程号SCORE(N,5,2) 分数SNO(C,5) 学号CNO(C,3) 课程号SCORE(N,5,2) 分数96001 001 77.5 96005 005 90 97002 003 91 96001 003 89 96005 006 89 97002 004 96001 004 86 96005 007 76 97002 006 92 96001 005 82 96003 001 69 97004 005 90 96002 001 88 97001 001 96 9700

5、4 006 85 96002 003 92.5 97001 008 95 97004 008 75 96002 006 90 96004 001 87 97003 001 59 96005 004 92 96003 003 91 97003 003 58 注意:区别大小写IS:信息系CS :计算机系MA :数学系Oracle9i上机操作指南安徽工业大学计算机学院2/10 实验一:数据定义语言 实验目的 熟悉 Oracle 上机环境及Oracle 客户端的配置;熟练掌握和使用DDL语言,建立、修改和删除数据库表、主键、外键约束关系和索引。 实验要求 熟悉 Oracle 上机环境,掌握Oracle

6、 客户端的配置;建立数据库表,修改数据库表结构,建立、删除索引; 实验内容 1 SQL 数据定义语句:例 1-1 : ( 建立数据库表 ) 建立教学数据库的四个数据库表,其中 Student表中不包含SSEX(C,2) 字段, Sname 字段为 Sname(C,8) 且可为空。Oracle9i上机操作指南安徽工业大学计算机学院3/10 例 1-2 : ( 修改数据库表 ) 在 Student 表中增加SEX(C,2) 字段。ALTER TABLE STUDENT ADD SEX CHAR(2) CHECK(SEX IN ( 男,女) 例 1-3 : ( 修改列名 ) 将 Student 表中

7、列名SEX修改为 SSEX 。ALTER TABLE STUDENT DROP COLUMN SEX Oracle9i上机操作指南安徽工业大学计算机学院4/10 ALTER TABLE STUDENT ADD SSEX CHAR(2) CHECK(SEX IN ( 男,女) 例 1-4 : ( 修改数据库表 ) 将 Student 表中把 Sname 字段修改为Sname(C,10)且为非空。ALTER TABLE STUDENT MODIFY (SNAME VARCHAR2(10) 例 1-5 : ( 建立索引 ) 为 Score 表按课程号升序、分数降序建立索引,索引名为SC_GRADE。

8、CREATE INDEX SC_GRADE ON SCORE(CNO,GRADE DESC) 例 1-6 : ( 删除索引 ) 删除索引SC_GRADE。DROP INDEX SC_GRADE Oracle9i上机操作指南安徽工业大学计算机学院5/10 例 1-7 : ( 建立数据库表 ) 建立数据库表S1(SNO,SNAME,SD,SA) ,其字段类型定义与Student表中的相应字段 (SNO,SNAME,SDEPT,SAGE)的数据类型定义相同。例 1-8 : ( 修改数据库表 ) 删除成绩表Score 的参照完整性约束关系。例 1-9 : ( 修改数据库表 ) 添加成绩表Score 的

9、参照完整性约束关系。例 1-10: ( 修改数据库表名) 将数据库表S1 改名为 Student_Temp 。Oracle9i上机操作指南安徽工业大学计算机学院6/10 实验二:数据操纵语言 实验目的 在实验一的基础上,熟练掌握和使用DML语言,对数据进行增加、修改和删除操作。 实验要求 对数据库表进行插入、修改和删除数据的操作。 实验内容 2 SQL 数据操纵语句:例 2-1 : ( 插入数据 ) 按前面各表中的数据分别插入到教学数据库的四个数据库表中。插完后的显示结果截图Oracle9i上机操作指南安徽工业大学计算机学院7/10 插完后的显示结果截图Oracle9i上机操作指南安徽工业大学

10、计算机学院8/10 Oracle9i上机操作指南安徽工业大学计算机学院9/10 Oracle9i上机操作指南安徽工业大学计算机学院10/10 例 2-2 :( 多行插入 ) 将表 Student中在计算机系( CS ) 的学生数据插入到表Student_Temp 中。Oracle9i上机操作指南安徽工业大学计算机学院11/10 (以上操作中,注意用COMMIT 提交数据,将数据保存到数据库服务器)例 2-3 :( 利用查询来实现表的定义与数据插入) 求每一个学生的平均成绩,把结果存入数据库表Student_Gr中。例 2-4 : ( 修改数据 ) 将 Student_Temp 表中所有学生的年

11、龄加2。执行 UPDATE STUDENT_TEMP SET SA=SA+2;的前后比较:例 2-5 : ( 修改数据 ) 将 Course 表中 程序设计 课时数修改成与 数据结构 的课时数相同。UPDATE COURSE Oracle9i上机操作指南安徽工业大学计算机学院12/10 SET CTIME=(SELECT CTIME FROM COURSE WHERE CNAME=数据结构 ) WHERE CNAME=程序设计 ; 执行完此语句后的结果如下:例 2-6 : ( 插入数据 ) 向 Score 表中插入数据( 98001 , 001 , 95 ) ,根据返回信息解释其原因。INSE

12、RT INTO SCORE VALUES(98001,001,95); 因为 SCORE 表的外键SC_FK1 是 STUDENT 表中的 SNO,而 STUDENT 表中没有学号为98001 的学生,所以不能插入。例 2-7 : ( 插入数据 ) 向 Score 表中插入数据( 97001 , 010 , 80 ) ,根据返回信息解释其原因。INSERT INTO SCORE VALUES(97001,010,80); Oracle9i上机操作指南安徽工业大学计算机学院13/10 因为 SCORE 表的外键SC_FK2 是 COURSE 表中的 CNO,而 COURSE 表中没有课程号为01

13、0 的课程,所以不能插入。例 2-8 : ( 删除数据 ) 删除 Student 表中学号为 96001 的学生信息,根据返回信息解释其原因。DELETE FROM STUDENT WHERE SNO=96001; 因为在定义完整性约束条件时,没有写 ON DELETE CASECADE 选项,则默认为ON DELETE RESTRICTED ,此选项表示如果父表中的行在子表中引用,则它不能被删除,由于STUDENT表中的SNO 在 SCORE 表中被引用,所以不允许删除。例 2-9 : ( 删除数据 ) 删除 Course 表中课程号为 003的课程信息,根据返回信息解释其原因。DELETE

14、 FROM COURSE WHERE CNO=003; 因为在定义完整性约束条件时,没有写 ON DELETE CASECADE 选项,则默认为ON DELETE Oracle9i上机操作指南安徽工业大学计算机学院14/10 RESTRICTED ,此选项表示如果父表中的行在子表中引用,则它不能被删除,由于COURSE 表中的CNO 在 SCORE 表中被引用,所以不允许删除。例 2-10: ( 删除数据 ) 删除学生表Student_Temp 中学号以96 打头的学生信息。DELETE FROM STUDENT_TEMP WHERE SNO LIKE 96%; 例 2-11: ( 删除数据 ) 删除数据库表Student_Temp 中所有学生的数据。DELETE FROM STUDENT_TEMP; 执行完此语句后再次查询,无数据证明表中数据已被删除,显示如下:例 2-12:( 删除表 ) 删除数据库表Student_Temp 和 Student_Gr 。DROP TABLE STUDENT_TEMP; DROP TABLE STUDENT_GR; Oracle9i上机操作指南安徽工业大学计算机学院15/10 实验三:数据查询语言 实验目的 体会 SQL语言数据查询功能的丰富和复杂。 实验要求 对数据库表进行各种查询操作。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

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