当前位置:范文大全 > 调查报告 > 数据库系统概论实验报告.:

数据库系统概论实验报告.:

发布时间: 2021-10-31 12:09:40

《数据库系统概论》实验报告书

专业班级

学 号

姓 名

指导教师

安徽工业大学计算机学院

实验一:数据定义 / 数据操纵语言

实验目的

熟悉 Oracle 上机环境及 Oracle 客户端的配置; 熟练掌握和使用立、修改和删除数据库表、主键、外键约束关系和索引;熟练掌握和使用对数据进行增加、修改和删除操作。



DDL语言, 建DML语言,

实验内容

1.



SQL 数据定义语句:

例 1-1:



(



建立数据库表



)



建立教学数据库的四个数据库表,其中



Student



表中不包含

SSEX(C,2) 字段, Sname 字段为 Sname(C,8) 且可为空。

例 1-2 : ( 修改数据库表 ) 在 Student 表中增加 SEX(C,2) 字段。

例 1-3 : ( 修改列名 ) 将 Student 表中列名 SEX修改为 SSEX。

例 1-4 : ( 修改数据库表 ) 将 Student 表中把 Sname 字段修改为 Sname(C,10) 且为非空。

例 1-5 :( 建立索引 ) 为 Score 表按课程号升序、 分数降序建立索引, 索引名为 SC_GRADE。

例 1-6 : ( 删除索引 ) 删除索引 SC_GRADE。

例 1-7 : ( 建立数据库表 ) 建立数据库表 S1(SNO,SNAME,SD,SA),其字段类型定义与

Student 表中的相应字段 (SNO,SNAME,SDEPT,SAGE)的数据类型定义相同。

例 1-8 : ( 修改数据库表 ) 删除成绩表 Score 的参照完整性约束关系。

例 1-9 : ( 修改数据库表 ) 添加成绩表 Score 的参照完整性约束关系。

例 1-10 : ( 修改数据库表名 ) 将数据库表 S1 改名为 Student_Temp 。

2. SQL

数据操纵语句:

例 2-1

: ( 插入数据 ) 按前面各表中的数据分别插入到教学数据库的四个数据库表中。

例 2-2

:( 多行插入 ) 将表 Student 中在计算机系 ( ‘CS’)的学生数据插入到表 Student_Temp

中。

例 2-3

:( 利用查询来实现表的定义与数据插入

) 求每一个学生的平均成绩,把结果存入数

据库表 Student_Gr 中。

例 2-4

: ( 修改数据 ) 将 Student_Temp 表中所有学生的年龄加 2。

例 2-5 :( 修改数据 ) 将 Course 表中 ‘程序设计 ’课时数修改成与 ‘数据结构 ’的课时数相同。

例 2-6 :( 插入数据 ) 向 Score 表中插入数据( ‘98001’, ‘001’,95 ),根据返回信息解释其原因。

例 2-7 : ( 插入数据 ) 向 Score 表中插入数据( ‘97001’, ‘010’, 80 ),根据返回信息解释其原因。

例 2-8 : ( 删除数据 ) 删除 Student 表中学号为 ‘96001’的学生信息,根据返回信息解释

其原因。

例 2-9 : ( 删除数据 ) 删除 Course 表中课程号为 ‘003’的课程信息,根据返回信息解释其原因。

例 2-10 : ( 删除数据 ) 删除学生表 Student_Temp 中学号以 96 打头的学生信息。

例 2-11

:(删除数据)

删除数据库表

Student_Temp 中所有学生的数据。

例 2-12

:( 删除表 )

删除数据库表

Student_Temp 和 Student_Gr 。

实验程序

create table student(

sno char(5) primary key,

sname char(8),

sdept char(2) not null,

sclass char(2) not null,

sage numeric(2)

)

create table course(

cno char(3) primary key,

cname char(16) unique,

ctime numeric(3)

)

create table teach(

tname char(8),

tsex char(2),

cno char(3),

tdate datetime,

tdept char(2),

primary key(tname,cno,tdept),

foreign key(cno) references course(cno)

)

create table score(

sno char(5),

cno char(3),

score numeric(5,2)

primary key(sno,cno),

foreign key(sno) references student(sno),

foreign key(cno) references course(cno)

)

alter table student add sex char(2)

sp_rename 'student.sex','ssex','column'

alter table student alter column sname char(10) not null

create unique index sc_grade on score(sno,score desc)

drop index score.sc_grade

create table s1(

sno char(5) primary key,

sname char(8),

sd char(2),

sa numeric(2)

)

alter table score drop constraint fk_score_student

alter table score add constraint fk_score_student

foreign key (sno)

references student(sno) on update cascade on delete cascade

sp_rename 's1','student_temp'

insert into student values('96001','

马小燕 ','CS','01',21,'

女 ');

insert into student values('96002','

黎明 ','CS','01',18,'

男 ');

insert into student values('96003','

刘东明 ','MA','01',18,'

男 ');

insert into student values('96004','

赵志勇 ','IS','02',20,'

男 ');

insert into student values('97001','

马蓉 ','MA','02',19,'

女 ');

insert into student values('97002','

李成功 ','CS','01',20,'

男 ');

insert into student values('97003','

黎明 ','IS','03',19,'

女 ');

insert into student values('97004','

李丽 ','CS','02',19,'

女 ');

insert into student values('96005','

司马志明 ','CS','02',18,'

男 ');

insert into Course values('001','

数学分析 ',144);

insert into Course values('002','

普通物理 ',144);

insert into Course values('003','

微机原理 ',80);

insert into course values('004','

数据结构 ',72);

insert into course values('005','

操作系统 ',80);

insert into course values('006','

数据库原理 ',80);

insert into course values('007','

编译原理 ',60);

insert into course values('008','

程序设计 ',40);

insert into teach values('

王成刚 ','

男 ','004','1999.9.5','CS');

insert into teach values('

李正科 ','

男 ','003','1999.9.5','CS');

insert into teach values('

严敏 ','

女 ','001','1999.9.5','MA');

insert into teach values('

赵高 ','

男 ','004','1999.9.5','MA');

insert into teach values('

刘玉兰 ','

女 ','006','2000.2.23','CS');

insert into teach values('

王成刚 ','

男 ','004','2000.2.23','IS');

insert into teach values('

马悦 ','

女 ','008','2000.9.6','CS');

insert into score values('96001','001',77);

insert into score values('96001','003',89);

insert into score values('96001','004',86);

insert into score values('96001','005',82);

insert into score values('96002','001',88);

insert into score values('96002','003',92);

insert into score values('96002','006',90);

insert into score values('96005','004',92);

insert into score values('96005','005',90);

insert into score values('96005','006',89);

insert into score values('96005','007',76);

insert into score values('96003','001',69);

insert into score values('97001','001',96);

insert into score values('97001','008',95);

insert into score values('96004','001',87);

insert into score values('96003','003',91);

insert into score values('97002','003',91);

insert into score values('97002','004',NULL);

insert into score values('97002','006',92);

insert into score values('97004','005',90);

insert into score values('97004','006',85);

insert into student_temp values('96001','

马小燕 ','CS',21)

insert into student_temp values('96002','

黎明 ','CS',18)

insert into student_temp values('97002','

李成功 ','CS',20)

insert into student_temp values('97004','

李丽 ','CS',19)

insert into student_temp values('96005','

司马志明 ','CS',18)

select avg(score) avg1 into student_gr from score

group by sno

update student_temp

set sa=sa+2;

select * from student_gr

update course

set ctime=(

select ctime

from course c1

where c1.cname=' 数据结构 '

)where cname=' 程序设计 '

插入的数据( ‘ 98001’ ,

‘ 001’ , 95

)中, student

中没有 98001 这个学号

插入的数据( ‘ 97001’ ,

‘ 010’ , 80

)中, course

中没有 010 这个课程号

删除的数据中, 96001 这个学号在 score 中有记录

删除的数据中, 003 这个课程号在 score 中有记录

delete from student_temp

where sno like '96%

相关热词搜索: 实验报告 概论 实验 报告 数据库系统概论实验报告

版权所有:杨帆范文网 2010-2024 未经授权禁止复制或建立镜像[杨帆范文网]所有资源完全免费共享

Powered by 杨帆范文网 © All Rights Reserved.。鲁ICP备16030136号