![图书管理系统大数据库_第1页](http://file3.renrendoc.com/fileroot_temp3/2021-12/27/f83d7142-6147-427c-a8d0-459bfb3baa12/f83d7142-6147-427c-a8d0-459bfb3baa121.gif)
![图书管理系统大数据库_第2页](http://file3.renrendoc.com/fileroot_temp3/2021-12/27/f83d7142-6147-427c-a8d0-459bfb3baa12/f83d7142-6147-427c-a8d0-459bfb3baa122.gif)
![图书管理系统大数据库_第3页](http://file3.renrendoc.com/fileroot_temp3/2021-12/27/f83d7142-6147-427c-a8d0-459bfb3baa12/f83d7142-6147-427c-a8d0-459bfb3baa123.gif)
![图书管理系统大数据库_第4页](http://file3.renrendoc.com/fileroot_temp3/2021-12/27/f83d7142-6147-427c-a8d0-459bfb3baa12/f83d7142-6147-427c-a8d0-459bfb3baa124.gif)
![图书管理系统大数据库_第5页](http://file3.renrendoc.com/fileroot_temp3/2021-12/27/f83d7142-6147-427c-a8d0-459bfb3baa12/f83d7142-6147-427c-a8d0-459bfb3baa125.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库原理与应用教程实验报告数据库分析与设计图书管理系统一、需求说明要实现一个简化的图书管理系统,在此图书管理系统中只涉与学生信息、借 阅信息和管理者信息的管理。此系统要求能够记住书籍的根本信息、 学生的信息 和管理者的信息。该系统的业务要求为:一名学生可以在不同的日期屡次借阅同一本书。一名学生可以同时借阅多本不同的图书。一本书可以在不同的时间借给不同的学生。一名学生不能在同一天对同一本书借阅屡次。一名管理员可以同时管理多本图书。该系统的根本信息包括:学生信息:某某,学号,学院,专业,年级。图书信息:图书名称,图书编号,名称,出版日期,作者,是否可借。管理员信息:管理员某某,管理员编号。除上述
2、要求外,该系统还需产生如下报表:学生借阅图书信息表:学号,图书编号,图书名称,借阅日期,应归还日期。 图书管理表:管理日期,管理员编号,管理员某某。二、数据库结构设计2.1概念结构设计概念结构设计是根据需求分析的结果产生概念结构设计的E-R模型。由于这个系统比拟简单,因此这里采用自顶向下的设计方法。自顶向下设计的关键是首 先要确定系统的核心活动。所谓核心活动就是系统中的其他活动都要围绕这个活 动展开或与此活动密切相关。确定了核心活动之后,系统就有了可扩展的余地。 对于这个图书管理系统,其核心活动是图书,学生与图书之间是通过学生借阅图 书发生联系的,管理员与图书之间是通过管理员管理图书发生联系的
3、。至此,此系统包含的实体有:图书:用于描述课程的根本信息,用图书编号标识。学生:用于描述学生的根本信息,用学号标识。管理员:用于描述管理员的根本信息,用管理员编号标识。由于一名学生可以借阅多本图书,并且一本书可以在不同时间借给不同的学生。因此,学生与图书之间是多对多的联系。 又由于一本图书可以由多名管理员 管理,而且一名管理员可以管理多本图书。 因此,管理员与图书之间也是多对多 的联系。其根本E-R模型如图1所示:根据需求分析的结果,该E-R模型模型中个实体所包含的属性如下: 学生:某某,学号,学院,专业,年级。图书:图书名称,图书编号,名称,出版日期,作者,是否可借。 管理员:管理员某某,管
4、理员编号。各联系本身应具有的属性为:借阅:学号,图书编号,图书名称,借阅日期,应归还日期。管理:管理日期,管理员编号,管理员某某。这个E-R模型转换出的关系模式如下,其中主码用下划线标识:学生 学上某某,学院,专业,年级图书图书编号,图书名称,名称,出版日期,作者,是否可借管理员管理员编号、管理员某某借阅 学号,图书标号,图书名称,借阅日期,应归还日期,其中图书 编号为引用“图书关系模式的外码;学号为引用“学生关系模式的外码。管理 管理日期,管理员编号,管理员某某,其中管理员编号为引用“管 理员关系模式的外码。(1)确定各管是模式是否属于第三 X式经过分析发现,“学生、”图书、”管理员、“借阅
5、和”管理 5个关系模式中,都不存在局部依赖和传递依赖关系,因此都属于第三X式。(2)确定信息的完整性该教学管理系统要产生:学生借阅图书信息、图书管理2个报表,分别分析 如下:“学生借阅图书信息表包括学号、图书编号、图书名称、借阅日期、应归还日期。其中“学号可由“学生关系模式得到,”图书编号、“图书名称、“借阅日期、“应归还日期可由“借阅关系模式得到,因此可以 满足学生借阅图书信息表的要求。“图书管理表包括管理日期、管理员编号、管理员某某。其中“管理日期 可由“管理关系模式得到,“管理员编号,“管理员某某可由“管理员 关系模式得到。因此,所有关系模式满足所有报表的信息要求。至此,关系模式设计完毕
6、。下面给出创建这些关系表的SQL语句示例,其中的数据类型可根据实际情况 调整,为方便理解,表名、列名均用中文表示。CREATE TABLED表(学号 char(10) PRIMARY KEY,某某 char(10) NOT NULL ,学院 char(20) NOT NULL ,专业 char(20) NOT NULL ,年级 char(8) NOT NULL)CREATE TABLES 书表(图书编号 char(20) PRIMARY KEY,图书名称 char(20) NOT NULL ,名称 char(20) NOT NULL ,出版日期 datetime NOT NULL ,作者 ch
7、ar(10) NOT NULL)CREATE TABLE理员表(管理员编号 char(10) PRIMARY KEY,管理员某某char(10) NOT NULL)CREATE TABLE阅表(学号char(10) NOT NULL ,某某char(10) NOT NULL ,图书编号 char(20) NOT NULL ,图书名称 char(20) NOT NULL ,借阅日期 datetime NOT NULL ,应归还日期 datetime NOT NULL ,PRIMARY KEY律号,图书编号),FOREIGN KEY 密号)REFERENCE器生表(学号),FOREIGN KEY&
8、quot;书编号)REFERENCES书表(图书编号)CREATE TABLE理表(管理日期 datetime NOT NULL ,管理员编号 char(10) NOT NULL ,管理员某某 char(10) NOT NULL ,PRIMARY KEY管理日期,管理员编号),FOREIGN KEY"理员编号)REFERENCE母理员表(管理员编号)(1)学生借阅图书信息表我们将该报表直接用查询语句的形式生成, 将动态查询条件作为查询语句中 的数据筛选条件。例如,假设要为大三学生生成借阅图书情况的报表,如此语句如下:SELECT学号,某某,图书名称FROM(昔阅表WHER所级=大三(
9、2)图书管理表该表可以查询出在哪一天由哪位管理员借出了哪些图书,因此,直接用查询语句生成。SELECT图书编号,图书名称,管理日期,管理员编号,管理员某某三、数据库行为设计对于数据库应用系统来说,最常用的功能是安全控制功能,数据的增、删、 改、查功能以与生成报表的功能。本系统也应包括这些根本的操作。3.1 安全控件任何数据库应用系统都需要安全控件功能,这个图书管理系统也不例外。假 设将系统的用户分为如下几类:图书馆系统管理人员:具有系统的全部操作权限。教务部门:具有对学生根本信息、图书信息和管理员信息的维护权。学生:具有对图书信息的查询权。在实现时,可将每一类用户定义为一个角色,这样在授权时只
10、需对角色授权, 而无需对每个具体的用户授权。3.2 数据操作功能数据操作功能包括对这些数据的录入、删除、修改功能。具体如下:(1)数据录入包括又t这5X表的录入。只有具有相应权限的用户才能录入相应表中的数据。(2)数据删除包括又t这5X表的删除。只有具有相应权限的用户才能删除相应表中的数据。数据的删除要注意表之间的关联关系。 比如在删除“学生表中的数据之前,应 先删除该学生在“借阅表中的信息,然后再学生表中删除该学生,以保证不违 反参照完整性约束。另外,在实际执行删除操作之前应该提醒用户是否真的要删 除数据,以免发生误操作。(3)数据修改当某些数据发生变化或某些数据录入不正确时, 应该允许用户
11、对数据库中的 数据进展修改,修改数据的操作一般是先根据一定的条件查询出要修改的记录, 然后在对其中的某些记录进展修改, 修改完成后再回到数据库中。同数据的录入 与删除一样,只有具有相应权限的用户才能修改相应表中的数据。(4)数据查询在数据库应用系统中,数据查询是最常用的功能。数据查询应根据用户提出 的查询条件进展,在设计系统时应首先征求用户的查询需求, 然后根据这些需求 整理出系统应具有的查询功能。一般允许所有使用数据库的人都具有查询数据的 权限。本系统提出的查询要求有:根据学号、学院、专业等信息查询学生的根本信息。根据图书编号查询图书的根本信息。根据管理员编号查询管理员的根本信息。统计各个年
12、级学生借书的总数量。等等。制作这5个表的数据库使用DBMS勺是ACCESS然后用VB语言编写程序代码,实现程序的各个功能。其中用到了ADO据控件和DataGrid控件。1学生表VB代码Private Sub mand1_Click()'"添加"命令按钮'使"添加"和"删除"按钮成为不可用状态mand1.Enabled = Falsemand3.Enabled = False'使"更新"按钮成为可用状态mand4.Enabled = True,清空文本框中显示的内容Text1.Text =&q
13、uot;"Text2.Text =""Text3.Text =""Text4.Text =""Text5.Text =""End SubPrivate Sub mand2_Click()'"退出"命令按钮EndEnd Sub删除"命令按钮Private Sub mand3_Click()Dim res As Integerres = MsgBox("确实要删除此行记录吗?", vbExclamation + vbYesNo + vbDefaultB
14、utton2),提示用户If res = vbYes Then '如确实要删除If AdodcStudent.Recordset.EOF = True ThenEnd IfEnd IfEnd SubPrivate Sub mand4_Click()'" 更新"命令按钮将文本框中的当前值写入结果集中相应字段中AdodcStudent.Recordset.Fields(" 学号")=Trim(Text1.Text)某某")=Trim(Text2.Text) 学院")=Trim(Text3.Text) 专业")=T
15、rim(Text4.Text) 年级")=Trim(Text5.Text)AdodcStudent.Recordset.Fields(AdodcStudent.Recordset.Fields( AdodcStudent.Recordset.Fields( AdodcStudent.Recordset.Fields( ,使更新生效 '使"添加"和"删除"按钮成为可用状态mand1.Enabled = Truemand3.Enabled = TrueEnd SubPrivate Sub mand5_Click()'"上一
16、条"命令按钮End SubPrivate Sub mand6_Click()'"下一条"命令按钮End Sub2图书表VB代码Private Sub mand2_Click()'"添加"命令按钮 '使"添加"和"删除"按钮成为不可用状态mand2.Enabled = Falsemand3.Enabled = False'使"更新"和"取消"按钮成为可用状态mand4.Enabled = Truemand5.Enabled = True
17、,清空文本框中显示的内容Text1.Text =""Text2.Text =""Text3.Text =""Text4.Text =""Text5.Text =""End SubPrivate Sub mand3_Click()'"删除"命令按钮Dim res As Integerres = MsgBox("确定要删除止匕行t己录 ?", vbExclamation + vbYesNo + vbDefaultButton2) 提示用户If res
18、= vbYes Then '如确实要删除If AdodcBook.Recordset.EOF = True ThenEnd IfEnd IfEnd Sub更新"命令按钮Private Sub mand4_Click()'"将文本框中的当前值写入结果集中相应字段中 mand3.Enabled = FalseAdodcBook.Recordset.Fields(" AdodcBook.Recordset.Fields(" AdodcBook.Recordset.Fields(" AdodcBook.Recordset.Fields(
19、" AdodcBook.Recordset.Fields(" ,使更新生效图书编号")=Trim(Text1.Text)图书名称")=Trim(Text2.Text)名称")=Trim(Text3.Text)出版日期")=Trim(Text4.Text)作者")=Trim(Text5.Text)'使"添加"和"删除"按钮成为可用状态mand2.Enabled = Truemand3.Enabled = True'使"取消"按钮成为不可用状态mand5
20、.Enabled = FalseEnd SubPrivate Sub mand5_Click() mand2.Enabled = True mand3.Enabled = True mand5.Enabled = False End SubPrivate Sub mand6_Click()上一条"命令按钮End SubPrivate Sub mand7_Click()'"下一条"命令按钮End Sub3管理员表VB代码Private Sub mand1_Click()'" 退出"命令按钮EndEnd SubPrivate Sub
21、 mand2_Click()添加"命令按钮'使"添加"和"删除"按钮成为不可用状态mand2.Enabled = False'使"更新"按钮成为可用状态mand4.Enabled = True,清空文本框中现实的内容Textl.Text =""Text2.Text =""End SubPrivate Sub mand3_Click()'" 删除"命令按钮Dim res As Integerres = MsgBox("确实要删除此行记
22、录吗?", vbExclamation + vbYesNo + vbDefaultButton2),提示用户If res = vbYes Then '如确实要删除If AdodcManager.Recordset.EOF = True ThenEnd IfEnd IfEnd SubPrivate Sub mand4_Click()'"更新"命令按钮将文本框中的当前值写入结果集中相应字段中AdodcManager.Recordset.Fields("管理员编号")=Trim(Text1.Text)AdodcManager.Reco
23、rdset.Fields("管理员某某")=Trim(Text2.Text),使更新生效 '使"添加"和"删除"按钮成为可用状态mand2.Enabled = Truemand3.Enabled = TrueEnd Sub上一条"命令按钮下一条"命令按钮Private Sub mand5_Click()End SubPrivate Sub mand6_Click()End Sub4借阅表VB代码Private Sub mand1_Click()'" 退出"命令按钮EndEnd S
24、ub上一条"命令按钮Private Sub mand2_Click()End SubPrivate Sub mand3_Click()'" 下一条"命令按钮End SubPrivate Sub mand4_Click()'"添加"命令按钮使"添加"和"删除"按钮成为不可用状态mand4.Enabled = Falsemand5.Enabled = False使"更新"按钮成为可用状态mand6.Enabled = True清空文本框中现实的内容Text1.Text =&
25、quot;"Text2.Text =""Text3.Text =""Text4.Text =""Text5.Text =""Text6.Text =""End SubPrivate Sub mand5_Click()'"删除"命令按钮Dim res As Integerres = MsgBox("确实要删除此行记录吗?", vbExclamation + vbYesNo + vbDefaultButton2)提示用户If res = vb
26、Yes Then '如确实要删除If AdodcBorrown.Recordset.EOF = True ThenEnd IfEnd IfEnd Sub更新"命令按钮Private Sub mand6_Click()'"将文本框中的当前值写入结果集中相应字段中AdodcBorrown.Recordset.Fields(AdodcBorrown.Recordset.Fields(AdodcBorrown.Recordset.Fields(学号")=Trim(Text1.Text)某某")=Trim(Text2.Text)图书编号"
27、)=Trim(Text3.Text)AdodcBorrown.Recordset.Fields(" AdodcBorrown.Recordset.Fields(" AdodcBorrown.Recordset.Fields(" '使更新生效图书名称")=Trim(Text4.Text)借阅日期")=Trim(Text5.Text)应归还日期")=Trim(Text6.Text)使"添加"和"删除"按钮成为可用状态mand4.Enabled = Truemand5.Enabled = Tr
28、ueEnd Sub5管理表VB代码Private Sub mand1_Click()'"退出"命令按钮EndEnd Sub添加"命令按钮Private Sub mand2_Click()使"添加"和"删除"按钮成为不可用状态mand2.Enabled = Falsemand3.Enabled = False使"更新"按钮成为可用状态mand4.Enabled = True清空文本框中现实的内容Text1.Text =""Text2.Text =""Text3
29、.Text =""End SubPrivate Sub mand3_Click()'" 删除"命令按钮Dim res As Integerres = MsgBox("确实要删除此行记录吗?", vbExclamation + vbYesNo + vbDefaultButton2)提示用户If res = vbYes Then ' 如确实要删除If AdodcManagement.Recordset.EOF = True ThenEnd IfEnd IfEnd SubPrivate Sub mand4_Click()
30、39;"更新"命令按钮将文本框中的当前值写入结果集中相应字段中AdodcManagement.Recordset.Fields("管理日期")=Trim(Text1.Text) AdodcManagement.Recordset.Fields(" 管理员编号")=Trim(Text2.Text)AdodcManagement.Recordset.Fields(" 管理员某某")=Trim(Text3.Text) '使更新生效使"添加"和"删除"按钮成为可用状态mand
31、2.Enabled = Truemand3.Enabled = True End SubPrivate Sub mand5_Click()'" 上一条"命令按钮End SubPrivate Sub mand6_Click()'" 下一条"命令按钮End Sub为数据库中5个表设计的VB工程中,其根本类型相似,由于涉与到参照完整性约束,因此这里将重点说明“学生表和“借阅表的使用说明,”图书表和”管理员表参照“学生表,”管理表参照“借阅表。(1)学生表使用说明启动VB程序,打开“学生表的工程文件,并运行该程序。1)单击“上一条 ”下一条按钮,
32、移动指针将上下移动到相应的条目2)单击“添加按钮,窗体上的文本框控件将清空,可以在文本框中输入数据, 数据将同时显示在“学生表的最后一行条目中。3)单击“更新按钮,数据将完整地添加到“学生表中4)要删除更新的数据时,先将移动指针指向要删除的条目,然后单击“删除”按 钮,新添加的数据将从“学生表中删除。5单击”退出按钮,完毕程序代码,退出运行界面。(2)图书表使用说明启动VB程序,打开“图书表的工程文件,并运行该程序。1单击”上一条 ”下一条按钮,移动指针将上下移动到相应的条目。2单击“添加按钮,窗体上的文本框控件将清空,可以在文本框中输入数据,数据将同时显示在“图书表的最后一行条目中。3单击“更新按钮,数据将完整地添加到“图书表中。4要删除更新的数据时,先将移动指针指向
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 如何做好辅导员工课件
- 第1节 透镜(备课讲义)-2021-2022学年八年级物理上册同步备课讲义和课后训练(人教版)
- 《运筹学最大流问题》课件
- 《勒诺特式园林》课件
- 《高效团队管理》课件
- 二零二五年度苗木种植项目融资担保服务合同
- 安徽省合肥市瑶海区2024-2025学年七年级上学期期末考试语文试卷
- 《目标市场营销》课件
- 2025至2031年中国小兔子行业投资前景及策略咨询研究报告
- 《现代教育》课件
- 2024年A特种设备相关管理考试题库及答案
- 数字化智能化园区建设水平评价标准(征求意见稿)
- 外研版(三起点)小学英语三年级下册全册同步练习(含答案)
- 幼儿园 《十个人快乐大搬家》绘本
- 2024至2030年中国电极糊行业市场调查分析及产业前景规划报告
- 2025年中考英语热点时文阅读-发明创造附解析
- 湖南株洲二中2022自主招生考试英语试卷试题(精校打印)
- 血透室护理质控
- 粤语课程设计
- 人美版四年级上册美术(全册)教案
- 10S505 柔性接口给水管道支墩
评论
0/150
提交评论