数据库课程设计-图书馆数据库设计

数据库课程设计-图书馆数据库设计

ID:10918162

大小:505.50 KB

页数:11页

时间:2018-07-08

数据库课程设计-图书馆数据库设计_第1页
数据库课程设计-图书馆数据库设计_第2页
数据库课程设计-图书馆数据库设计_第3页
数据库课程设计-图书馆数据库设计_第4页
数据库课程设计-图书馆数据库设计_第5页
资源描述:

《数据库课程设计-图书馆数据库设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、网络工程系综合性实验实验报告课程名称数据库技术与应用学号姓名任课老师2012年11月图书馆数据库设计一.实验内容:为图书馆设计一个数据库,此数据库对每个借阅者保存读者记录,包括:借书证号、姓名、性别、单位、可借数量。对每本书记录:书号、书名、作者、出版社。对每本被借出的书有:读者号、借出日期、应还日期。可以随时查阅书库中的书籍信息,所有的书籍均由书号唯一标识;可以随时查阅书籍借还情况,系统约定任何人可以借多本图书,任何一种图书可以为多人所借,借书证号具有唯一性。二.实验要求:1.基于《数据库概论》中所学的知识分析该数据库的基本结构,2.用Transact-sql命

2、令完成如下要求:(1)创建数据库和数据表,定义每个表的主键和外键,为每个属性选择合适的数据类型,定义每个属性是否允许空值,是否有默认值等;(2)结合具体情况为数据库表设置合理的约束或规则;(3)如果需要,为数据表设计合理的触发器;(4)使用SQL语句,在你设计的每个表中插入至少3条数据,要求记录满足数据约束要求,且尽量真实可信;(5)自行设计查询要求,给出经常需要用到的查询语句。3.写出完整的实验报告。三.实验代码--创建library数据库createdatabaselibraryonprimary(name=library_dat,--创建主数据库文件file

3、name='c:mydatalibrarydat.mdf',size=5,maxsize=100,filegrowth=10%)logon(name='library_log',--创建日志数据库文件filename='c:mydatalibrarylog.ldf',size=5,maxsize=100,filegrowth=5)go--借阅者信息表uselibrarygocreatetablereader(rnochar(10)primarykey,rnamechar(10)notnull,rsexchar(2)check(rsexin('男','女')

4、),rdepartchar(30)notnull,rmaxbsmallintnotnulldefault(5),)gocreatetablebook(bnochar(10)primarykey,bnamechar(20)notnull,bauthorchar(20),bconcernchar(20)notnull,bnumintnotnull)gocreatetableborrowbook(bbnochar(20)primarykey,rnochar(10)foreignkey(rno)referencesreader(rno),bnochar(10)foreig

5、nkey(bno)referencesbook(bno),bbdateodatetimenotnulldefault(getdate()),bbdatendatetimenotnulldefault(dateadd(mm,2,getdate())),borrownumintnotnulldefault(1))go--读者借书createprocpr_borrow@rnochar(10),@bnochar(10)asif(@rnoin(selectrnofromreader)and@bnoin(selectbnofrombook))beginif((selectbn

6、umfrombookwherebno=@bno)like0or(selectrmaxbfromreaderwhererno=@rno)like0)beginprint'该书本已借完或借书已达最大书目'return-7endelseif(@rno+@bnoin(selectbbnofromborrowbook))beginupdateborrowbooksetborrownum=borrownum+1wherebbno=@rno+@bnoupdatereadersetrmaxb=rmaxb-1whererno=@rnoupdatebooksetbnum=bnum-1

7、wherebno=@bnoendelsebegininsertborrowbook(bbno,rno,bno)values(@rno+@bno,@rno,@bno)updatereadersetrmaxb=rmaxb-1whererno=@rnoupdatebooksetbnum=bnum-1wherebno=@bnoendendelseprint'您输入的信息有误,请重新输入'return-7go--读者还书createprocpr_return@rnochar(10),@bnochar(10)asupdatereadersetrmaxb=rmaxb+1wher

8、erno=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。