《数据库第六章习题讲解.ppt》由会员分享,可在线阅读,更多相关《数据库第六章习题讲解.ppt(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数据库原理与应用数据库原理与应用主讲主讲:宋菲宋菲第六章课后习题及补充习题讲解第六章课后习题及补充习题讲解n nP110 第六章课后习题n n上节课补充练习题n n15.1 15.1 15.1 15.1 建立学生成绩管理数据库建立学生成绩管理数据库建立学生成绩管理数据库建立学生成绩管理数据库CREATE DATABASE CREATE DATABASE 学生成绩管理学生成绩管理ON PRIMARYON PRIMARY (NAME=NAME=学生成绩管理学生成绩管理_data,_data,FILENAME=D:data FILENAME=D:data学生成绩管理学生成绩管理_data.mdf,_
2、data.mdf,SIZE=10MB,SIZE=10MB,MAXSIZE=UNLIMITED,MAXSIZE=UNLIMITED,FILEGROWTH=10%FILEGROWTH=10%)LOG ONLOG ON (NAME=NAME=学生成绩管理学生成绩管理_log,_log,FILENAME=D:data FILENAME=D:data学生成绩管理学生成绩管理_log.ldf,_log.ldf,SIZE=1MB,SIZE=1MB,MAXSIZE=5MB,MAXSIZE=5MB,FILEGROWTH=1MB FILEGROWTH=1MB )n n15.2 15.2 建立学生表、课程表、成绩表
3、(建立学生表、课程表、成绩表(P54P54页结构)页结构)create table create table 学生表学生表(学号学号 char(12)primary key not null,char(12)primary key not null,姓名姓名 char(8)not null,char(8)not null,性别性别 char(2)not null check(char(2)not null check(性别性别=男男or or 性别性别=女女),),出生年月出生年月 datetime check(datetime check(出生年月出生年月 1996-12-31),=1 an
4、d =1 and 学分学分 =6),=0 and=0 and 成绩成绩=100),=4(5 5)select 学号学号,课程号课程号,成绩成绩 from 成绩表成绩表 where 成绩成绩=60 and 成绩成绩=80n nselect*from csview 补充练习题补充练习题n n1、在你的计算机上的D盘下建立一个以你学号末3位数字和姓名给合的考试文件夹,如一个学生的学号为200501203,姓名为李明聪,则在D盘上建立一个文件夹“203_李明聪”作为考试用文件夹;并在这个考试文件夹下建立3个文件夹,分别为:“DATA”、“SQL”和“BAK”。n n2 2、使用、使用、使用、使用SQL
5、 Server2000SQL Server2000建立一个名为建立一个名为建立一个名为建立一个名为“图书管理图书管理图书管理图书管理”的数据库,的数据库,的数据库,的数据库,其数据文件和日志文件保存在考试文件夹下的其数据文件和日志文件保存在考试文件夹下的其数据文件和日志文件保存在考试文件夹下的其数据文件和日志文件保存在考试文件夹下的DATADATA文件夹内;文件夹内;文件夹内;文件夹内;CREATE DATABASE CREATE DATABASE 图书管理图书管理ON PRIMARYON PRIMARY (NAME=NAME=图书管理图书管理_data,_data,FILENAME=D:da
6、ta FILENAME=D:data图书管理图书管理_data.mdf,_data.mdf,SIZE=10MB,SIZE=10MB,MAXSIZE=UNLIMITED,MAXSIZE=UNLIMITED,FILEGROWTH=10%FILEGROWTH=10%)LOG ONLOG ON (NAME=NAME=图书管理图书管理_log,_log,FILENAME=D:data FILENAME=D:data图书管理图书管理_log.ldf,_log.ldf,SIZE=1MB,SIZE=1MB,MAXSIZE=5MB,MAXSIZE=5MB,FILEGROWTH=1MB FILEGROWTH=1M
7、B )n n3、在“图书管理”数据库下建立三个用户表:图书、读者和借阅。create table 图书(总编号 char(6)primary key not null,分类号 char(6)not null,书名 char(50)not null,作者 char(8),出版单位 char(30),单价 money,)create table 读者(借书证号 char(3)primary key not null,单位 char(20),姓名 char(8)not null,性别 char(2),职称 char(10),地址 char(30)create table create table 借
8、阅借阅(借书证号借书证号 char(3)references char(3)references 读者读者(借书证号借书证号)not)not null,null,总编号总编号 char(6)references char(6)references 图书图书(总编号总编号)not null,)not null,借书日期借书日期 smalldatetime,smalldatetime,primary key(primary key(借书证号借书证号,总编号总编号)n n4、创建数据库关系图“图书借阅关系图”,如下图4所示。n n5、分别往“图书”、“读者”和“借阅”数据表中添加数据。n n6、使用
9、SQL命令往图书表中插入一条记录,其数据分别为“665544,TS7/21,高等代数,刘明,高等教育出版社,20”,以insert1_1文件名将命令保存在考试文件夹下的SQL文件夹下;insert 图书 values(665544,TS7/21,高等代数,刘明,高等教育出版社,20)n n使用使用SQLSQL命令往读者表中插入一条记录,其数据命令往读者表中插入一条记录,其数据分别为分别为“125“125,财会系,马英明,男,副教授,财会系,马英明,男,副教授,2 2号楼号楼212”212”,以,以insert1_2insert1_2文件名将命令保存在考试文文件名将命令保存在考试文件夹下的件夹下
10、的SQLSQL文件夹下;文件夹下;insert 读者 values(125,财会系,马英明,男,副教授,2号楼212)n n使用使用SQLSQL命令往借阅表中插入一条记录,其数据命令往借阅表中插入一条记录,其数据分别为分别为“125“125,332211332211,2006-3-11”2006-3-11”,以,以insert1_3insert1_3文文件名将命令保存在考试文件夹下的件名将命令保存在考试文件夹下的SQLSQL文件夹下;文件夹下;insert 借阅 values(125,332211,2006-3-11)7、使用SQL命令在图书管理数据库中进行查询,以SQL1_4 SQL1_31
11、文件名将命令保存在考试文件夹下的SQL文件夹下;(1)、找出姓李的读者姓名及其所在单位;select 姓名,单位 from 读者 where 姓名 like 李%(2)、查看所有读者的全部情况;select*from 读者(3)、列出所有图书的书名及出版单位;Select 书名,出版单位 from 图书(4 4)、找出高等教育出版社的所有图书及单价,结)、找出高等教育出版社的所有图书及单价,结果按单价降序排列;果按单价降序排列;Select Select 书名书名,单价单价 from from 图书图书 where where 出版单位出版单位=高等教高等教育出版社育出版社 order by
12、order by 单价单价 desc desc(5 5)、查找价格介于)、查找价格介于1010元和元和2020元之间的图书种类元之间的图书种类(即去掉重复),结果按出版单位和单价升序排(即去掉重复),结果按出版单位和单价升序排列;列;Select distinct Select distinct 分类号分类号,出版单位出版单位,单价单价 from from 图书图书 where where 单价单价=10 and=10 and 单价单价=20 order by=20 order by 出版单位出版单位,单价单价(6 6)、查找图书中,高等教育出版社和科学工业出)、查找图书中,高等教育出版社和科
13、学工业出版社的图书种类及作者;版社的图书种类及作者;Select Select 分类号分类号,作者作者 from from 图书图书 where where 出版单位出版单位=高等高等教育出版社教育出版社 or or 出版单位出版单位=科学工业出版社科学工业出版社 (7 7)、查找书名以)、查找书名以“计算机计算机”打头的所有图书及作打头的所有图书及作者;者;Select Select 书名书名,作者作者 from from 图书图书 where where 书名书名 like like 计算机计算机%(8 8)、查询同时借阅了总编号为)、查询同时借阅了总编号为112266112266和和44
14、9901449901两两本书的借书证号;本书的借书证号;select s1.select s1.借书证号借书证号 from from 借阅借阅 as s1,as s1,借阅借阅 as s2 as s2 where s1.where s1.借书证号借书证号=s2.=s2.借书证号借书证号 and s1.and s1.总编号总编号=112266 and s2.=112266 and s2.总编号总编号=449901=449901(9 9)、查询所有借阅了图书的读者姓名及所在单位;)、查询所有借阅了图书的读者姓名及所在单位;Select Select 姓名姓名姓名姓名,单位单位单位单位 from from 读者读者读者读者 where where 借书证号借书证号借书证号借书证号 in(in(select select 借书证号借书证号借书证号借书证号 from from 借阅借阅借阅借阅)(10)、查找姓李的读者所借的所有图书的书名及借书日期;select 图书.书名,借阅.借书日期from 读者,图书,借阅where 读者.借书证号=借阅.借书证号 and 借阅.总编号=图书.总编号 and 读者.姓名 like 李%