收藏 分销(赏)

SQL图书管理系统样本.doc

上传人:二*** 文档编号:4776866 上传时间:2024-10-12 格式:DOC 页数:20 大小:231.53KB
下载 相关 举报
SQL图书管理系统样本.doc_第1页
第1页 / 共20页
亲,该文档总共20页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、1、系统功能模块图开始登录身份认证读者管理员借还图书预约图书图书信息查询系统维护预约信息管理借阅信息管理读者信息管理图书信息管理读者信息管理2、系统E-R图3、数据库逻辑构造设计关系模式表(红色表达主码,蓝色表达外码)读者类型表(读者类型,可借阅天数,可借阅数量,续借次数)读者(姓名,借阅证号,系别,读者类型,密码)管理员(姓名,工号,密码)书籍类型(书籍类型编号,书籍类型)某类书籍(ISBN,书名,作者,出版社编号,价格,出版时间,库存量,在馆数量,书籍类型编号)书籍(图书编号,ISBN,书名,书架编号,书籍状态,损坏限度)(ISBN相称于书籍类型编号) 阅览室(阅览室编号,阅览室名称,阅览

2、室位置)书架(书架编号,阅览室编号)预约(借阅证号,ISBN,预约时间,预约到期时间)借阅表(读者帐号,图书编号,借出日期,实际归还日期,到期时间,超过还书天数,续借次数,罚款金额,实缴金额)出版社(出版社编号,名称,联系人,地址,联系电话)管理员表管理员表(Administrator)名称别名数据类型取值范畴默认值阐明与否为空工号ANoChar(15)主键不为空姓名ANamevarChar(8)密码APwdChar(6)000000读者身份表读者身份(ReaderType)名称别名数据类型取值范畴默认值阐明与否为空读者类型ReaderTypeChar(4)“学生”,”教师”主码借书上限Max

3、BorNumTinyint0-106不为空最大续借次数MaxBorcountTinyInt0-22最长借书时间MaxBorTimeTinyint2单位是月不为空读者信息表读者信息(Reader)名称别名数据类型取值范畴默认值阐明与否为空借阅证号ReaderAccountChar(8)主码读者类型ReaderTypeChar(4)“学生”,”教师”外码,外键参照读者身份表Readertype不为空读者姓名ReaderNamevarChar(8)读者密码ReaderPwdChar(6)000000读者系别ReaderSdeptvarChar(20)书籍类型表书籍类型(BookType)名称别名数据

4、类型取值范畴默认值阐明与否为空书籍类型编号BookTypeIdvarChar(10)主键不为空书籍类型BookTypetext出版社表出版社(Press)名称别名数据类型取值范畴默认值阐明与否为空出版社编号PressNoChar(10)名称PressNameText联系人contactText联系电话TeleChar(12)地址addrtext某类书籍表(BookSeries)某类书籍表(BookSeries)列名数据类型空/非空约束条件表达含义ISBNchar(20)非空主键ISBNBookNametext可觉得空无书名Authorvarchar(20)可觉得空无作者PressNo varc

5、har(20)可觉得空外键,参照出版社表PressNo字段出版社编号Pricesmallmoney可觉得空无价格PublishTimedatetime可觉得空无出版日期BookNumint可觉得空无库存量BookInint可觉得空无在馆数量SeriesIdvarchar(10)可觉得空外键,参照书籍类型表SeriesId字段书籍类型编号阅览室表阅览室表(ReadingRoom)名称别名数据类型取值范畴默认值阐明与否为空阅览室编号RoomNumChar(20)主键不为空阅览室名称RoomNameText阅览室位置RoomLocaltext书架表书架表(Shelf)名称别名数据类型取值范畴默认值阐

6、明与否为空书架编号ShelfnumChar(20)主键不为空阅览室编号roomnumChar(20)外键,参照阅览室表RoomNum字段图书信息表图书信息(Book)名称别名数据类型取值范畴默认值阐明与否为空图书编号BookIdvarChar(20)主键不为空ISBNISBNChar(20)外键,参照某类书籍表书名 BookNametext书架编号ShelfnumvarChar(20)外键,参照书架表损坏限度BookStatevarchar(20)书籍状态BookDamagesmallint读者借阅表读者借阅表(BorrowReturn)名称别名数据类型取值范畴默认值阐明与否为空借阅证号Rea

7、derAcountChar(15)主键,外码,参照读者表不为空ISBNISBNChar(20)主码,外码,参照某类书籍表不为空续借次数BorCountChar(1)0-2借出日期BorrowTimeDateTime不为空实际归还日期ReturnTimeDateTime不为空到期时间Deadlinedatetime超过还书天数ExceedingDays罚款金额Fine实缴金额PaidAmount预约表预约表(Appointment)名称别名数据类型取值范畴默认值阐明与否为空借阅证号ReaderAccountChar(15)主键、外键参照读者表ReaderAccount字段ISBNISBNChar

8、(20)主键、外键参照图书表ISBN字段预约时间AppTimeDatetime截止时间ExpirationTimedatetime4、SQL语句建库与建表创立图书管理系统数据库CREATE DATABASE LibarySystemON(NAME=library_Data, FILENAME=d:sqldatalibrary.mdf, SIZE=5MB, MAXSIZE=50MB, FILEGROWTH=10%)LOG ON(NAME=library_Log, FILENAME=d:sqldatalibrary_Log.ldf, SIZE=2MB, MAXSIZE=5MB, FILEGROWT

9、H=1MB)GO创立读者身份表use LibarySystemGOcreate table ReaderType(ReaderType char(4)check (ReaderType in (教师,学生) primary key,MaxBorNum tinyint ,MaxBorTime tinyint ,MaxBorCount tinyint )GO创立读者表use LibarySystemGOcreate table Reader(ReaderAccount char(8) primary key,ReaderName varchar(8) ,ReaderPwd char(6) ,Rea

10、derSdept varchar(20) ,ReaderType char(4)foreign key references ReaderType(ReaderType)GO创立管理员表USE LibarySystemGOCREATE TABLE Administrator( ANo CHAR(8) PRIMARY KEY, AName varCHAR(8), APwd CHAR(6), );GO创立书籍类型表USE LibarySystemGOCREATE TABLE BookType( BookTypeId varCHAR(10) PRIMARY KEY, BookType TEXT);G

11、O创立阅览室表USE LibarySystemGOCREATE Table ReadingRoom( RoomNum CHAR(20), RoomName TEXT, RoomLocal TEXT, PRIMARY KEY (RoomNum);GO创立书架表USE LibrarySystemGOCREATE TABLE Shelf(ShelfNum CHAR(20), RoomNum CHAR(20), PRIMARY KEY (ShelfNum), FOREIGN KEY (RoomNum) REFERENCES ReadingRoom(RoomNum);GO创立出版社表use Libary

12、SystemGOcreate table Press(PressNoChar(10),PressNameText,ContactText,TeleChar(12),Addrtext,primary key(PressNo),)GO创立某类书籍表USE LibarySystemGOCREATE Table BookSeries(ISBN CHAR(20), BookName TEXT, Author VARCHAR(20), PressNo VARCHAR(20), PageNum SMALLINT, Price SMALLint, PublishTime DATETIME, BookNum I

13、NT, BookIn INT, SeriesId VARCHAR(10), PRIMARY KEY (ISBN), FOREIGN KEY (SeriesId) REFERENCES BookType(BookTypeId);GO创立图书表USE LibarySystemGOCREATE Table Book(BookId VARCHAR(20), ISBN CHAR(20), BookName TEXT, ShelfNum CHAR(20), BookState VARCHAR(20), BookDamage SMALLINT, PRIMARY KEY (BookId), FOREIGN K

14、EY (ISBN) REFERENCES BookSeries(ISBN), FOREIGN KEY (ShelfNum) REFERENCES Shelf(ShelfNum);GO创立预约表USE LibarySystemGOCREATE Table Appointment(ReaderAccount CHAR(8),ISBN CHAR(20), AppTime DATETIME,ExpirationTime DATETIME, PRIMARY KEY (ReaderAccount,ISBN), FOREIGN KEY (ReaderAccount) REFERENCES Reader(Re

15、aderAccount), FOREIGN KEY (ISBN) REFERENCES BookSeries(ISBN);GO创立借阅表USE LibarySystemCREATE Table BorrowReturn(ReaderAccount CHAR(8),ISBN CHAR(20),BorrowTime DATETIME,Deadline DATETIME,ReturnTime DATETIME,ExceedingDays INT,BorCount INT,Fine SMALLMONEY,PaidAmount SMALLINT, PRIMARY KEY (ReaderAccount,I

16、SBN,BorrowTime), FOREIGN KEY (ISBN) REFERENCES BookSeries(ISBN), FOREIGN KEY (ReaderAccount) REFERENCES Reader(ReaderAccount); GO5、对数据库记录进行操作insert(举某些例子,其她则用交互式SQL语句添加记录);往ReaderType表中添加记录use LibarySystem;goinsert into ReaderType(ReaderType,MaxBorNum,MaxBorTime,MaxBorCount)values(学生,8,1,1);goinsert

17、 intoReaderTypevalues(教师,10,2,2);go;往Reader表中添加记录use LibarySystem;goinsert into Reader(ReaderAccount,ReaderName,ReaderPwd,ReaderSdept,ReaderType)values(1913,杨扬,888888,计算机科学与技术,学生);goinsert intoReadervalues(,刘一,888888,计算机科学与技术,教师);goinsert intoReadervalues(,刘二,888888,生物科学技术,教师);goinsert intoReaderval

18、ues(,刘三,888888,教诲科学学院,教师);goupdate;将帐号为读者系别更新为数学系use LibarySystem;goupdate Readerset ReaderSdept=数学where ReaderAccount=;godelete;删除帐号为读者use LibarySystem;godelete fromReaderwhere ReaderAccount=;goselect(单表查询);查找帐号为读者信息use LibarySystem;goselect*from Readerwhere ReaderAccount=;go;查询所有学生信息use LibarySyst

19、em;goselect*from Readerwhere ReaderType=学生;go;查询书架1上所有图书use LibarySystem;goselect*from Bookwhere ShelfNum=1;go(连接查询);查找读者预约信息select Reader.ReaderAccount,ReaderName,ReaderSdept,ReaderType,ISBN,AppTime,ExpirationTimefrom Reader,Appointmentwhere Reader.ReaderAccount=Appointment.ReaderAccount;;查询读者借阅信息s

20、elect Reader.ReaderAccount,ReaderName,ReaderSdept,ReaderType,ISBN,BorrowTime,Deadlinefrom Reader,BorrowReturnwhere Reader.ReaderAccount=BorrowReturn.ReaderAccount;(嵌套查询);查找1号阅览室所有书架上书籍select BookId,ISBN,BookNamefrom Bookwhere ShelfNum IN(select ShelfNumfrom Shelfwhere RoomNum=1);;查询书名为数据库书籍详细信息selec

21、t *from BookSerieswhere ISBN IN(select ISBNFROM Bookwhere BookName like %数据库% );;依照输入学号,列出该同窗当前所借图书详细信息select *from BookSerieswhere ISBN in(select ISBNfrom BorrowReturnwhere ReaderAccount=1913);(集合查询) ;查询计算机专业教师信息select *from Readerwhere ReaderType=教师 intersectselect *from Readerwhere ReaderSdept=计算机科学与技术;;查阅读者身份为教师或系别为计算机系读者select *from Readerwhere ReaderType=教师 unionselect *from Readerwhere ReaderSdept=计算机科学与技术;;查询在馆数量不不大于2或价格低于30书籍信息select *from BookSerieswhere BookIn=2unionselect *from BookSerieswhere price=30;

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服