数据库上机实验五

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五SQL语言综合实验

一、实验目的

利用SQL语言的9个动词以及相关语法解决综合问题;体会SQL语言在数据库系统设计、实现过程中的作用。

二、实验内容及步骤

特别说明:实验过程中所有的SQL语句的都需要保存到一个word文件或文本文档中,实验结束前需将SQL语句粘贴到网络课程中提交;数据库文件需分离后压缩提交FTP。

以下操作均在查询分析器中实现:

1、建立以dbszh+“学号”命名的数据库,如dbszh101 //设1班01号学生。

2、在第一步建立的数据库中建立S,C,SC基本表

❖S(sno,sname,sex,bdate,height) 030920311 王义平男1984-08-20 1.71 ❖C(cno,lhour,credit,semester) cs-201 80 4 秋

❖Sc(sno,cno,grade) 030920311 cs-201 80.0

各字段数据类型请参考示例元组设定,定义S表的主码为sno,定义C表的主码为cno,定义SC表的主码为(sno,cno),定义sno为SC表的外码,定义cno为SC表的外码。

3、修改基本表

(1)在C表中增加一个新的属性“cname”,char(8)型,允许为空值。

(2)将C表中的cname属性类型改为char(20)型。

(3)删除C表中的cname属性。

4、建立索引

(1)在SC表的多个字段建立索引,以“INDEX+自己的学号”命名索引名(如:index101),先按学号升序索引,然后按成绩降序索引。

(2)删除刚才建立的索引。

5、更新数据

(1)利用INSERT语句插入元组:

S表中:

030920311 王义平男1984-08-20 1.71

050620312 张三男1984-04-20 1.9

“你的学号”“你的姓名”“你的性别”“你的出生日期”“你的身高”

C表中:(课程号cno值的前两位表示开课系)

cs-201 80 4 秋

cs-202 60 4 春

dj-101 30 2 秋

Sc表中:

030920311 cs-201 75

“你的学号”cs-202 68

“你的学号”dj-101

(2)利用UPDATE修改元组

将SC表中你自己的成绩都改为90分。

6、查询

(1)查询选修计算机系秋季所开课程的男生姓名、课程号、学分数、成绩(2)查询至少选修一门电机系课程的女生的姓名

(3)查询每位学生已选课程的门数和总平均成绩

(4)查询缺成绩的学生的姓名、缺成绩的课程号及其学分数

7、视图

(1)创建视图,以“V+你的学号”命名(如:V101),提供计算机系秋季所开课程的课程号和学分数。

(2)利用第1步创建的视图和给定的3个基本表,查询出选修计算机系秋季所开课程的男生的姓名、课程号、学分数、成绩。

8、删除

(1)删除你自己的所有选课记录。

(2)删除SC表。

--实验五

--1

create database dbszh113

--2

--s表

create table s

(sno char(10)primary key,

sname char(20),

sex char(2)check(sex in('男','女')), bdate datetime,

height float

);

--c表

create table c

(cno char(10)primary key,

lhour int,

credit int,

semester char(4)

);

--sc表

create table sc

(sno char(10),

cno char(10),

grade float,

primary key(sno,cno),

foreign key(sno)references s(sno), foreign key(cno)references c(cno) );

--3

--1

alter table c

add cname char(8);

--2

alter table c

alter column cname char(20);

--3

alter table c

drop column cname;

--4

--1

create unique index index113 on sc(sno asc,cno desc);

--2

drop index index113 on sc ;

--5

--1.1

insert

into s

values('030920311','王平义','男','1984-08-20',1.71);

insert

into s

values('050620312','张三','男','1984-04-20',1.9);

insert

into s

values('110303113','叶惠','女','1992-02-01',1.69);

--1.2

insert

into c

values('cs-201','80','4','秋');

insert

into c

values('cs-202','60','4','春');

insert

into c

values('dj-101','30','2','秋');

--1.3

insert

into sc

values('030920311','cs-201','75');

insert

into sc

values('110303113','cs-202','68');

相关文档
最新文档