版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,用数据库创建图书管理系统,王伟洪,2,-libraryDB数据库的创建 create database libraryDB on ( name=libraryDB_mdf, fileName=F:图书馆libraryDB_mdf.mdf, size=3mb, maxsize=100mb, filegrowth=1mb ) log on ( name=libraryDB_ldf, fileName=F:图书馆libraryDB_ldf.ldf, size=3mb, maxsize=100mb, filegrowth=1mb ),3,-ReaderInfo表的创建 create table R
2、eaderInfo ( ReaderId int identity(1,1) ReaderNo varchar(20) not null, ReaderName varchar(10) not null, Sex int default(0), BirthDate datetime, Phone varchar(50), NumberID varchar(30), Address varchar(200), RegisterDate datetime, ReaderCount int, Remark varchar(500), IsLoss int ),4,-BookType表的创建 crea
3、te table BookInfo ( TypeId int identity(1,1) primary key, TypeName varchar(50), Remark varchar(100) ),5,-BookInfo表的创建 create table BookInfo ( BookId int identity primary key, BookName varchar(50) not null, TypeId int not null, Author varchar(20), Press varchar(50), PressDate datetime, Price money, P
4、age int, NowNum int, BookNum int, AddDate datetime, ByCount int, IsOff int, Remark varchar(500) ),6,-BorrowInfo表的创建(略),看了那么久,是不是觉得很枯燥?,下面动手试试看吧!,7,-BackInfo表的创建 create table BackInfo ( BackId int identity(1,1) primary key , BookId int constraint FK_BookInfo_BackInfo_BookId foreign key references Boo
5、kInfo(BookId), ReaderId int constraint FK_ReaderInfo_BackInfo_ReaderId foreign key references ReaderInfo(ReaderId), BackMoney money, EndTime datetime, IsBack int ),8,-数据库不区分大小写 以下书写方式为个人习惯 -数据库的数据要自己编辑 use libraryDB go if exists (select * from sys.objects where name=proc_borrow) drop proc proc_borro
6、w -判断存储过程是否纯在 go create procedure proc_borrow bookId int, -图书编号 readerId int, -阅读者编号 borrowTime datetime, -借书时间默认为当前时间 shouldTime datetime, -应还时间 mortgageMoney money -借书押金 as -判断图书是否存在 if not exists (select 1 from BookInfo where BookId =bookId) begin print 借阅失败,不存在该图书. return end,9,-判断图书的当前数量,是否大于1本
7、 declare nowNum int select nowNum =nowNum from BookInfo where BookId =bookId if (nowNum 1) begin print 借阅失败,图书已全部借出 return end -判断阅读者是否存在 if not exists (select * from ReaderInfo where ReaderId =readerId ) begin print 借阅失败,不存在该阅读者 return end -判断押金是否大于1元 if (mortgageMoney1) begin print 借阅失败,押金小于1元 ret
8、urn end,10,-判断借书时间是否小于应还书的时间 if (DATEDIFF(DD,borrowTime ,shouldTime )1) begin print 借阅失败,借书时间应小于还书时间 return end -修改图书存量 update BookInfo set NowNum =NowNum -1 where BookId =bookId if (IDENTITY =0) begin print 借阅失败,修改图书数量失败 return end -修改借书记录 insert into BorrowInfo values (BookId,readerId,borrowTime,s
9、houldTime,mortgageMoney,0) if (IDENTITY=0) begin print 借阅失败,插入借书记录失败 return end,11,-修改借书记录 insert into BorrowInfo values (BookId,readerId,borrowTime,shouldTime,mortgageMoney,0) if (IDENTITY=0) begin print 借阅失败,插入借书记录失败 return end -修改图书的借阅次数 update BookInfo set ByCount=ByCount+1 where BookId=bookId if (rowcount=0) begin print 借阅失败,修改图书的借阅次数失败 return end -修改读者的借阅次数 update ReaderInfo set ReaderCount=ReaderCount+1 where ReaderId=readerId if (rowcount=0) begin print 借阅失败,修改读者的借阅次数失败 return end,12,print 借阅成功 GO -执行,-表BookInfo数据(部分),-表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年南充职业技术学院单招面试题库及答案
- 2026年湖北省高职单招职业适应性测试题库及答案
- 2026版医疗纠纷预防和处理条例试题与答案
- 初中网络课程设计
- C语言迷宫最佳路径求解课程设计
- bgp协议课程设计摘要
- 洪涝灾害卫星数据监测工具课程设计
- PCA降维分析教程课程设计
- Linu防火墙高级技巧课程设计
- 成产管理课程设计
- 《老年人健康管理实务》老年保健与管理专业全套教学课件
- cnas文件考试试题及答案
- DZ/T 0132-1994钻孔压水试验规程
- 幕墙安全管理制度
- 中医康复中的适宜技术选择试题及答案
- DB37T 1342-2021 平原水库工程设计规范
- 2024低温阀门深冷处理规范
- 广西燃气安全检查标准 DBJ T45-1472-2023(2023年7月1日实施)
- 外聘电工合同范本
- 临床肺泡出血综合征CT影像表现
- JTS-252-2015水运工程施工监理规范
评论
0/150
提交评论