在系(Sdept)五个属性组成,可记为: Student(Sno,Sname,Ssex,Sage,Sdept) Sno 为关键字。 (2) “课程”表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,可记为: Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。 (3) “学生选课”表SC由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,可记为: SC(Sno,Cno,Grade) (SNO, CNO) 为关键字。 完成下列操作: (1)写出创建Student数据库的命令,该数据库的主数据文件逻辑名称为Student_data,物理文件名为Student.mdf,初始大小为1MB,最大尺寸为2MB,增长速度为1mb;数据库的日志文件逻辑名称为Student_log,物理文件名为Student.ldf,初始大小为1MB,最大尺寸为3MB,增长速度为10%。 Create DataBase student ON
(name=student_data,filename=\size=1MB,maxsize=2MB,filegrowth=1MB ) LOG ON
(name=student_log,filename=\ , size=1MB, maxsize=3MB ,fielgrowth=10% )
(2)写出创建 “学生”表Student的命令,表Student是由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成,其中学号属性不能为空,并且其值是唯一的。
Create table student
(snonchar(10) not null primary key, Snamenchar(10), Ssexnchar(1), Sage int,
Sdeptnchar(20) )
(3).在student表中查询Sdept是‘计算机’的学生的所有信息,并按Sno降序排列。 Select * from student
where sdept like “计算机%” order by snodesc
(4).在以上三个表中查询Ccredit为5并且Grade大于60的学生的学号、姓名和性别。 select student.Sno,Sname,Ssex from student,course,sc
wherestudent.sno=course.sno and course.cno=sc.cno and ccredit=’5’ and grade=60
Student(Sno,Sname,Ssex,Sage,Sdept)
Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。 SC(Sno,Cno,Grade) (SNO, CNO)
(5). 建立一个由学生姓名和课号组成的视图
Create view v姓名课号 As
Select sname,cno from student,course,sc
Where student.sno=course.sno and course.cno=sc.cno and ccredit=’5’ and grade=60
20. 有一个电影资料库,数据库中含有三个数据表:电影信息、演员信息和电影_演员信息。各表构成见表1-表3。
(1) 请建立电影信息表,包括约束要求。 Create table 电影信息
(影片编号int identity primary key, 片名varchar(50), 发行公司varchar(50),
片长smallint default 90
类型 char(4) check 类型in (“惊险”,”言情”,”喜剧”,”科幻”,”其他”) (2) 为“电影_演员信息”表添加外键约束。 Alter table 电影_演员信息 Add
constraint uk_ypbm foreign key(影片编号) references 电影信息(影片编号), constraint uk_yybm foreign key(演员编号) references 演员信息(演员编号)
(3)检索出主演过“科幻”类电影的演员的姓名及电影片名。 Select 姓名,片名 from 电影信息,演员信息,电影_演员信息 Where 电影_演员信息.影片编号=电影信息.影片编号 and
电影_演员信息.演员编号=演员信息.影片编号 and 类型=”科幻”
(4)检索出电影长度不小于平均长度的电影片名和发行公司。 Select 片名,发行公司 from 电影信息
Where 片长>(select avg(发行时间) from 电影信息)
21、请使用SQL命令完成以下数据定义或数据操纵 (1). 创建数据库“studentDB”,其主数据文件名称stu_data,物理文件保存在d:\\data下,名称为student.mdf,初始大小5M,最大50M,以1M速度增加;该数据库的日志文件是stu_log,保存在d:\\data下,名称为student.ldf,初始大小2M,以5%速度增加。
Create DataBasestudentDB ON
(name=stu_data,filename=\size=5MB,maxsize=50MB,filegrowth=1MB ) LOG ON
(name=stu_log,filename=\ , size=2MB, fielgrowth=5% )
(2)为16题建立的student表的“姓名”属性创建非惟一的非聚集索引 CREATE NONCLUSTERED INDEX inxm ON student(姓名)
(3) 为16题建立的student表输入以下数据。
Insert into student(学号,姓名,性别,出生日期) Values(‘0401332901’,’李勇’,’男’,#1995-05-19#)
(4)将16题建立的student表中李勇的出生日期更改为1995-1-1。 Update student
Set 出生日期=#1995-1-1# Where 姓名=’李勇’
5)由16题建立的student表创建所有女生信息的视图。 Create view v女生 As
Select * from student where 性别=’女’
(6)删除16题建立的student表中学号为“0401332901”学生的数据。 Delete from student Where 学号=’ 0401332901’
22、请使用SQL命令完成以下检索操作
已知有图书表、作者表和出版社表,各表字段定义如下: 图书(图书编号,书名,价格,出版社编号,种类) 作者(作者编号,姓名,性别,电话,城市,地址) 出版社(出版社编号,出版社名称,出版社地址) (1).检索出所有图书的种类(不能含有相同种类)。 Selecct distinct 种类 from 图书
(2).检索出价格不在20至50元之间的图书的书名和价格。 Select书号,价格 from 图书
Where 价格<20 or 价格>50
(3).检索出各类图书的最高价格。 Select 种类,max(价格) from 图书 Group by 种类
(4).检索出图书编号以“C”开头,中间第3位为数字0-5的图书信息。 Select * from 图书
Where 图书编号 like ‘C_[012345]%’ (5).检索出“北京”市或“上海”市男性作者的编号、姓名和地址。 Select 编号,姓名,地址 from 作者
Where 性别=’男’ and 城市 in (“北京”,”上海”)
(6).检索出“计算机”类图书的平均价格和种类,并以“平均价格”表示。 Select avg(价格) as 平均价格,种类 from 图书 Where 种类=”计算机”
(7). 请按城市降序排列输出作者信息。 Select * from 作者 Order by 城市 desc (8).检索出价格在50元以上图书的书名、价格及出版社名称。 Select书号,价格,出版社名称 from 图书,出版社 Where 图书.出版社编号=出版社.出版社编号 and
价格>50
(9).查询出版“音乐”类图书的出版社名称和地址。
Select出版社名称,出版社地址 from 图书,出版社 Where 图书.出版社编号=出版社.出版社编号 and
种类=’音乐’
24、编程题(共4题)
有一个“学生-课程”数据库,数据库中包括三个表: (1) “学生”表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,可记为: Student(Sno,Sname,Ssex,Sage,Sdept) Sno 为关键字。 (2) “课程”表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,可记为: Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库SQL Server 2008数据库总复习题(3)在线全文阅读。
相关推荐: