如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
课程设计课程名称数据库系统概论题目名称图书借阅管理系统学生学院计算机学院专业班级学号学生姓名指导教师左亚尧2013年1月17日一、需求分析数据需求图书借阅管理系统是管理图书与借书者的关系,需要有图书的信息,如书的编号,书名,出版社,作者等;借书者的信息,如学生的学号,姓名,性别,院系等;借阅的信息,如学生的学号,书的编号,借出日期,归还日期等。功能需求该系统是为了方便管理员管理图书和借书者。所以应具有查询图书的功能,查询借出的图书的功能,查询借书者的功能,借书还书的功能以及查询借书过期的功能。E-R图借书者图书借阅学号姓名性别院系作者还书日期借书日期出版社书名编号mn三、逻辑结构设计将数据库的概念模型转换为关系模型借书者(学号,姓名,性别,院系)图书(编号,书名,出版社,作者)借阅(学号,编号,借书日期,还书日期)(注:下划线是主键,波浪线是外键)数据库建立创建数据库USEmasterGOCREATEDATABASE图书借阅ON(NAME='图书借阅_dat',FILENAME='e:\数据库\图书借阅dat.mdf',SIZE=30MB,FILEGROWTH=20%)LOGON(NAME='图书借阅_log',FILENAME='e:\数据库\图书借阅log.ldf',SIZE=3MB,FILEGROWTH=1MB)GO创建结果:创建基本表createtable"借书者"(学号char(10)primarykeynotnull,姓名char(8),性别char(2),院系char(10),)createtable"图书"(编号char(8)primarykeynotnull,书名char(20),出版社char(20),作者char(8),)createtable"借阅"(学号char(10),编号char(8),借书日期smalldatetime,还书日期smalldatetime,foreignkey(学号)references借书者(学号),foreignkey(编号)references图书(编号),)数据库的关系图插入数据插入借书者的数据:插入图书的数据:插入借阅的情况:测试借书情况查询借书的信息,包括借书者的学号,名字,书名select借阅.学号,姓名,书名from图书,借书者,借阅where借书者.学号=借阅.学号AND图书.编号=借阅.编号借书过期给出借书超期的信息,包括借书者的学号,姓名,书名,过期天数select借书者.学号,姓名,书名,DATEDIFF(DAY,还书日期,GETDATE())as过期天数from图书,借书者,借阅where借书者.学号=借阅.学号AND图书.编号=借阅.编号ANDGETDATE()-还书日期>0借书有学生借书,要在借书者、借阅的基本表中增加相应的数据INSERTINTO借书者VALUES('11111111','张三','男','计算机');INSERTINTO借阅VALUES('11111111','KO69351','2013/1/17','2013/3/8');修改前:修改后:还书有学生还书,应先在借阅的基本表中根据学号和编号撤销相应数据,再判断该借书者是否有借其他书,若没有则在借书者的基本表中撤销该借书者的数据。deletefrom借阅where学号='11111111'and编号='KO69351'deletefrom借书者wherenotexists(select*from借阅where学号=借书者.学号)修改前:修改后:心得经过两天的时间,在自己的努力下,基本完成本次课程设计,通过这次课程设计,了解了设计一个数据库系统的复杂性和对综合知识要求较高。因此在设计阶段我们查阅了很多资料加深了对数据库知识的认识。这次数据库课程设计是不同于平时的实验的,要严格作出这个设计的需求分析、逻辑结构、E-R图的构建等。但在创建数据库和基本表等操作在之前的实验中已经比较了解,所以在这方面并不麻烦。但是要注意主键的建立,外键的连接以及基本表的关系。在设计中也遇到过语法等错误,这说明就算做过实验,但对SQLServer也并不完全熟悉,而做完该设计后对SQLServer有更深入的了解了,这对我来说也是有很大