- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库实验报告(五)
班别:13统计2班 姓名:张永杰 学号:201324094245 评分:
实验题目 数据库操作--索引,视图与查询(二) 实验目的 掌握用 SQL 命令创建数据视图
掌握用SQL 命令进行复杂查询
SQL命令进行数据更新操作 实验环境 SQL2012 实验过程 1、在课程表中增加一属性deptid,用于指示开设该课程的系,指定其为外健。
alter table course
add deptid nchar(10)
foreign key references Department (Deptid);
2、建立 名为 MA_Course 的视图,用于维护所有数学系的课程。
create view MA_Course
as select Cid,Cname,Ccredit
from Course,Department
where Course.deptid=Department.Deptid AND Course.deptid=MA
with check option;
3、在学生表中增加一属性(deptid)用于指名学生所属系别,同时指定其为外健。
alter table Student
add deptid nchar(10)
foreign key references Department (Deptid);
4、建立视图MA_10Finance1, 用于维护数学系(MA) 金融(FA)1班学生信息,假定班级编号有如下规则:
CS2010SE_1 表示计算机系(CS) 2010级软件工程(SE) 一班。
create view MA_10Finance1
as select Sid,Sname,Sage,Ssex
from Student
where Classid=CS2010SE_1
with check option;
5、查询数学系(MA)各班的平均年龄。
select AVG(Sage)age
from Student
where Classid=金融2班;
select AVG(Sage)age
from Student
where Classid=统计班;
18至20岁的学生的学号,姓名。
select Sid,Sname
from Student
where Deptid=CS AND Sname like 刘% AND Sage between 18 and 20;
select Cname
from Course
where Cname like 信息%
2010级金融1班的学生的学号和姓名,按其数学分析的成绩降序排列。
select Student.Sid,Sname
from Student,Course,Enrollment
where Student.Sid like 2010% AND Student.Classid=金融1班
AND Course.Cname=数学分析 AND Course.Cid=Enrollment.Cid
AND Student.Sid=Enrollment.Sid
ORDER BY grade
select Student.Sid,Sname,Cname
from Student,Enrollment,Course
where grade is null AND Student.deptid=CS AND
Student.sid=Enrollment.Sid
AND Enrollment.Cid=Course.Cid
10、向课程表插入如下课程:
MA012,数学建模,4,MA
CS009,网络工程,3,CS
IS007,信息管理,4,IS
insert into Course(Cid,Cname,Ccredit,deptid)
values(MA012,数学建模,4,MA);
insert into Course(Cid,Cname,Ccredit,deptid)
values(CS009,网络工程,3,CS);
insert into Course(Cid,Cname,Ccredit,deptid)
values(IS007,信息管理,4,IS);
3分
update MA_Course
SET Ccredit=3
WHERE Cname=数学建模;
12、查询选修了数学系所有课程的学生的学号和姓名。
select Sid,Sname
from Student
where NOT EXISTS
(
SELECT *
FROM Course
WHERE deptid=MA AND NOT EXISTS
(
SELECT *
FROM Enrollment
WHERE
文档评论(0)