《数据库系统概论》实验报告书 安徽工业大学计算机学院
① 熟悉Oracle上机环境,掌握Oracle客户端的配置; ② 建立数据库表,修改数据库表结构,建立、删除索引; [ 实验方法 ]
① 按照附录中的操作步骤进行客户端的配置; ② 将实验需求用SQL语句表示; ③ 执行SQL语句;
④ 查看执行结果,如果结果不正确,进行修改,直到正确为止。 [ 实验总结 ]
实验通过使用sql*plus,学习对oracle的客户端创建,在服务器上建立用户,基本表是数据库的核心,所以创建正确的基本表是数据库的使用的前提,本次实验学习正确建立基本表并根据基本表中的属性建立索引和参照完整性约束关系,学习插入,修改,删除基本表。
5/18
《数据库系统概论》实验报告书 安徽工业大学计算机学院
实验二:数据操纵语言
[ 实验日期 ] 2014 年 10 月 28 日 [ 实验目的 ]
在实验一的基础上,熟练掌握和使用DML语言,对数据进行增加、修改和删除操作。 [ 实验内容 ]
2. SQL数据操纵语句:
例2-2:(多行插入 ) 将表Student中在计算机系(‘CS’)的学生数据插入到表Student_Temp中。
INSERT INTO Student_Temp(SNO,SNAME,SD,SA)
SELECT SNO,SNAME,SDEPT,SAGE FROM STUDENT WHERE SDEPT=’CS’;
例2-3:(利用查询来实现表的定义与数据插入) 求每一个学生的平均成绩, 把结果存入数据库表Student_Gr中。 CREATE TABLE Student_Gr( SNO CHAR(8) NOT NULL, SAVG NUMBER(5,2));
INSERT INTO Student_Gr(SNO,SAVG) SELECT SNO,AVG(SCORE) FROM SCORE GROUP BY SNO;
例2-4: (修改数据) 将Student_Temp表中所有学生的年龄加2。 UPDATE Student_Temp SET SA=SA+2;
例2-5: (修改数据) 将Course表中‘程序设计’课时数修改成与‘数据结构’的课时数相同。
UPDATE COURSE SET CTIME= ( SELECT CTIME FROM COURSE WHERE CNAME='数据结构') WHERE CNAME='程序设计'
例2-6: (插入数据) 向Score表中插入数据(‘98001’, ‘001’, 95),根据返回信息解释其原因。
INSERT INTO SCORE VALUES('98001','001',95);
因为Score表中的SNO字段是根据Student中的SNO建立的
6/19
《数据库系统概论》实验报告书 安徽工业大学计算机学院
例2-7: (插入数据) 向Score表中插入数据(‘97001’, ‘010’, 80),根据返回信息解释其原因。
INSERT INTO SCORE VALUES(‘97001’,’010’,80);
例2-8: (删除数据) 删除Student表中学号为‘96001’的学生信息,根据返回信息解释其原因。 DELETE FROM STUDENT WHERE SNO=’96001’;
因为STUDENT表中的学号已经被别的表作为外键,不可以被删除,违反完整约束条件
例2-9: (删除数据) 删除Course表中课程号为‘003’ 的课程信息,根据返回信息解释其原因。 DELETE FROM COURSE WHERE CNO=’003’;
因为Course表中课程号已经被别的表作为外键,不可以被删除,违反完整约束条件
例2-10: (删除数据) 删除学生表Student_Temp中学号以96打头的学生信息。 (此操作后,注意用ROLLBACK回退可能更新的数据) 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; [ 实验要求 ]
对数据库表进行插入、修改和删除数据的操作。 [ 实验方法 ]
① 按照附录中的操作步骤进行客户端的配置;
② 将实验需求用SQL语句表示; ③ 执行SQL语句;
④ 查看执行结果,如果结果不正确,进行修改,直到正确为止。
7/19
《数据库系统概论》实验报告书 安徽工业大学计算机学院
[ 实验总结 ]
创建基本表时,首先要确定具体要创建几张基本表,再根据具体某张基本表确定该表的具体属性,为每个属性确定数据类型,再跟数据间的关系确定表的主键和外键。基本表建立完成后,根据基本表的数据类型插入具体的数据
8/19
《数据库系统概论》实验报告书 安徽工业大学计算机学院
实验三:数据查询语言
[ 实验日期 ] 2014 年 11 月 2 日 [ 实验目的 ]
体会SQL语言数据查询功能的丰富和复杂。 [ 实验内容 ]
3. SQL数据查询语句:
例3-1: (选择表中的若干列) 求全体学生的学号、姓名、性别和年龄。
SELECT SNO,SNAME,SSEX,SAGE FROM STUDENT;
例3-2: (不选择重复行) 求选修了课程的学生学号。
SELECT DISTINCT SNO FROM SCORE WHERE CNO IS NOT NULL; 例3-3: (选择表中的所有列) 求全体学生的详细信息。
SELECT * FROM STUDENT;
例3-4: (使用表达式) 求全体学生的学号、姓名和出生年份。
SELECT SNO,SNAME,2014-SAGE AS \
9/19