资源描述:
《SQL存储过程实例(练习和答案).docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、题目11学校图书馆借书信息管理系统建立三个表:学生信息表:student字段名称数据类型说明stuIDchar(10)学生编号,主键stuNameVarchar(10)学生名称majorVarchar(50)专业图书表:book字段名称数据类型说明BIDchar(10)图书编号,主键titlechar(50)书名authorchar(20)作者借书信息表:borrow字段名称数据类型说明borrowIDchar(10)借书编号,主键stuIDchar(10)学生编号,外键BIDii.■■■
2、char(10);图书编号,外键T_
3、timedatetime借书日期B_timedatetime还书日期请编写SQL语句完成以下的功能:1)查询“计算机”专业学生在“2007-12-15”至“2008-1-8”时间段内借书的学生编号、学生名称、图书编号、图书名称、借出日期;参考查询结果如下图所示:2)查询所有借过图书的学生编号、学生名称、专业;参考查询结果如下图所示:3)查询借过作者为“安意如”的图书的学生姓名、图书名称、借出日期、归还日期;参考查询结果如下图所示:4)查询目前借书但未归还图书的学生名称及未还图书数量;参考查询结果如下图所示:附加:建表语句:US
4、EmasterGO/$$$$$$$$$$$$$^^建丿^库$$$$$$$$$$$$$$$$$$$$$$$$/--检验数据库是否存在,如果为真,删除此数据库--来源网络IFexists(SELECT*FROMsysdatabasesWHEREname='BOOK')DROPDATABASEBOOKGOCREATEDATABASEBOOKGO--建数据表--USEBOOKGOCREATETABLEstudent--学生信息表(stulDCHAR(10)primarykey,--学生编号stuNameCHAR(1O)NOTNULL,
5、--学生名称majorCHAR(50)NOTNULL--专业)GOCREATETABLEbook--图书表!■
6、(BIDCHAR(10)primarykey,--图书编号titleCHAR(50)NOTNULL,--书名authorCHAR(20)NOTNULL,--作者)GOCREATETABLEborrow--借书表(borrowIDCHAR(10)primarykey,--借书编号stuIDCHAR(10)foreignkey(stuID)referencesstudent(stuID),--学生编号BIDCHAR(10
7、)foreignkey(BID)referencesbook(BID),--图书编号T_timedatetimeNOTNULL,--借出日期B_timedatetime--归还日期_)GO--学生信息表中插入数据--INSERTINTOstudent(stulD,stuName,major)VALUES('1001','林林','计算机')INSERTINTOstudent(stulD,stuName,major)VALUES('1002','白杨','计算机')INSERTINTOstudent(stulD,stuName,
8、major)VALUES('1003','虎子','英语')INSERTINTOstudent(stulD,stuName,major)VALUES('1004','北漂的雪’,工商管理')INSERTINTOstudent(stuID,stuName,major)VALUES('1005','五月’,'数学')--图书信息表中插入数据--INSERTINTObook(BID,title,author)VALUES('B001','人生若只如初见','安意如')INSERTINTObook(BID,title,author)V
9、ALUES('B002','入学那天遇见你','晴空')INSERTINTObook(BID,title,author)VALUES('B003','感谢折磨你的人','如娜')INSERTINTObook(BID,title,author)VALUES('B004','我不是教你诈','刘庸来源网络')INSERTINTObook(BID,title,author)VALUES('B005','英语四级','白雪')--借书信息表中插入数据--INSERTINTOborrow(borrowlD,stulD,BID,T_tim
10、e,B_time)VALUES('T001','1001','B001','2007-12-26',null)INSERTINTOborrow(borrowlD,stulD,BID,T_time,B_time)VALUES('T002','1004','B003','2008