SQL数据库模拟题及答案
一、数据库设计题(共50分)
1、以“library”为名称创建一个数据库。该数据库中包含一个主数据文件tsdata.mdf,存放路径为“d:\data\”;一个事务日志文件tslog.ldf,存放路径为“d:\data\”。其他设置自定。(6分)
请截图(数据库文件属性):
2、在上题创建好的数据库中,按如下要求创建三张表。(每个表正确创建得8分,共24分)sql查询面试题及答案
表1 书籍表:用来存储书籍的基本信息
字段名称 | 数据类型 | 长度 | 是否为空 | 说明 |
序号 | int | 非空 | 初始值和增量均为1 | |
图书编号 | char | 10 | 非空 | 主键 |
书名 | varchar | 50 | 非空 | |
作者 | varchar | 20 | 非空 | |
价格 | Money | 空 | ||
出版社 | varchar | 50 | 非空 | |
出版日期 | smalldatetime | 空 | ||
库存量 | int | 非空 | >=0 | |
请截图(对象资源管理器,一直展开到“列”,有约束设置的展开至“键”和“约束”):
表2读者表:用来存储读者的基本信息
字段名称 | 数据类型 | 长度 | 是否为空 | 约束 |
借书证号 | char | 10 | 非空 | 主键 |
姓名 | varchar | 20 | 非空 | |
性别 | char | 2 | 非空 | 默认值为“男” |
单位 | varchar | 50 | 空 | |
char | 11 | 空 | ||
请截图(对象资源管理器,一直展开到“列”,有约束设置的展开至“键”和“约束”):
表3 借阅表:存储读者借阅的信息
字段名称 | 数据类型 | 长度 | 是否为空 | 约束 |
图书编号 | char | 10 | 非空 | 外键,参照书籍表 |
借书证号 | char | 10 | 非空 | 外键,参照读者表 |
借书日期 | smalldatetime | 非空 | ||
还书日期 | smalldatetime | 空 | ||
归还否 | char | 2 | 否 | |
请截图(对象资源管理器,一直展开到“列”,有约束设置的展开至“键”和“约束”):
3、在“library”数据库中插入以下记录。(每小题4分,共12分)
(1)在书籍表中插入以下数据:
图书编号 | 书名 | 作者 | 价格 | 出版社 | 出版日期 | 库存量 |
J1 | 计算机基础 | 刘大石 | 29 | 机械工业出版社 | 2014/2/1 | 5 |
J2 | 数据库应用教程 | 李刚 | 32 | 电子工业出版社 | 2014/9/1 | 8 |
(2)在读者表中插入以下数据:
借书证号 | 姓名 | 性别 | 单位 | |
10001 | 柯思扬 | 男 | 信息系 | 138******** |
10002 | 孙一明 | 男 | 管理系 | 139******** |
(3)在借阅表中插入以下数据:
图书编号 | 借书证号 | 借书日期 | 还书日期 | 归还否 |
J1 | 10001 | 2015/6/3 | 2015/12/3 | 否 |
J2 | 10001 | 2015/6/3 | 2015/12/3 | 否 |
请截图(打开数据表):
4、为读者表创建一个“姓名”列的非聚集索引文件。(4分)
请截图(索引属性):
5、创建“读者借阅信息”视图,包括借书证号、姓名、书名、还书日期等信息。(4分)
请截图(打开视图):
二、查询设计题(每小题5分,共25分)
1、在library数据库中查询“孙一明”的相关信息。
请粘贴T-SQL查询语句:
2、查询信息系或电子系的读者信息。
请粘贴T-SQL查询语句:
3、查书名以“计算机”打头的所有图书和作者。
请粘贴T-SQL查询语句:
4、查姓名为“柯思扬”借阅书本的书名。
请粘贴T-SQL查询语句:
5、查询借书证号为“10001”所借书本的本数,显示借书证号和借书本数,并按借书证号升序排序。(4分)
请粘贴T-SQL查询语句:
三、填空题(每空2分,共10分)
1、读者还书存储过程:ReturnBook的创建,若读者没有借阅此书,则显示‘对不起,你没有借阅此书,故而无法进行此次还书操作,请核实!’信息。
use Library
go
create _____________________
@no char(10),@bid char(10)
as
if not exists(_________________________________________________________)
begin
print'对不起,你没有借阅此书,故而无法进行此次还书操作,请核实!'
end
2、在借阅表中创建一个触发器:tri_Book,若要借的书已无库存,则无法进行借书操作,即无法在‘借阅表’中插入记录。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论