数据库设计—图书管理数据库系统设计

如下代码供学习交流,获取完整代码,请关注公众号(coding加油站)获取

1、项目简介

图书馆数据库,该项目同时提供pythonweb可视化展示界面,也可提供相关报告数据,可以用来作为数据库系统设计的期末作业

主要设计到如下几个功能:

1.1管理员方面

  • 增、删、改、挂失图书信息和读者信息;
  • 查看用户信息和图书信息。
  • 登录管理员界面
  • 为读者办理借书还书

1.2读者方面

  • 登录读者界面
  • 查询借书记录和个人信息

2、项目展示

如下是部分数据流图:

2.1:读者注册

2.2图书上架

2.3图书搜索

2.4图书借阅

2.5借书记录搜索

 3、项目数据字典

数据项名

别名

数据类型

说明

读者编号

reader_id

varchar(5) PK

读者证的编号按顺序系统分配

姓名

reader_name

varchar(20)

读者姓名

性别

sex

char(2)

读者性别

出生日期

birthday

date

读者出生日期

电话

phone

varchar(20)

读者电话

手机

mobile

varchar(20)

读者手机

证件名称

card_name

varchar(8)

读者的证件可以是身份证学生证等

证件编号

card_id

varchar(18)

读者的证件号

会员级别

level

varchar(6)

有三个级别,普通银卡金卡

办证日期

day

date

即注册日期

读者登录密码

Password(Readers)

varchar(45)

读者登录系统中时使用的密码

图书编号

book_id

varchar(5)

图书的编号系统分配

书名

book_name

varchar(50)

书的名字

作者

author

varchar(20)

书的作者

出版社

publishing

varchar(20)

书的出版社

类别编号

category_id

varchar(5)

书的类别编号

单价

price

double

书的价格

入库日期

date_in

datetime

入库的时间即图书上架时间

库存数量

quantity_in

int

上架的书的数量

借出数量

quantity_out

int

书借出去的数量

遗失数量

quantity_loss

int

书的丢失的数量

出借日期

date_borrow

date

书借出去的日期在借阅中生成

应还日期

date_return

date

根据会员的级别确定的日期

遗失

loss

char(2)

”“区分书是否丢失了

类别名称

category

varchar(20)

类别的名字如计算机

最长出借天数

days

smallint

根据会员级别相应天数

最多借书册书

numbers

smallint

根据会员级别能借最多的书

会费

fee

smallint

会员级别所要的费用(单位:)

管理员ID

User_ID

Varchar(20)

管理员登录用ID

管理员密码

Password(admin)

Varchar(20)

管理员登录用密码

4、系统ER图

5、部分数据表设计

CREATE TABLE `admin` (
  `userID` varchar(20) NOT NULL,
  `password` varchar(20) NOT NULL,
  PRIMARY KEY (`userID`,`password`),
  UNIQUE KEY `userID_UNIQUE` (`userID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE `book_category` (
  `category_id` varchar(5) NOT NULL DEFAULT '',
  `category` varchar(20) DEFAULT NULL,
  PRIMARY KEY (`category_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE `books` (
  `book_id` varchar(5) NOT NULL,
  `book_name` varchar(50) NOT NULL,
  `author` varchar(20) DEFAULT NULL,
  `publishing` varchar(20) DEFAULT NULL,
  `category_id` varchar(5) DEFAULT NULL,
  `price` double DEFAULT NULL,
  `date_in` date DEFAULT NULL,
  `quantity_in` int(11) NOT NULL,
  `quantity_out` int(11) NOT NULL,
  `quantity_loss` int(11) NOT NULL,
  PRIMARY KEY (`book_id`),
  KEY `category_id` (`category_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

获取完整代码,请关注文后二维码(coding加油站)获取 

  • 46
    点赞
  • 430
    收藏
    觉得还不错? 一键收藏
  • 46
    评论
数据库系统原理》课程设计—图书馆管理系统 一、课程设计的目的及意义 本课程设计是在学习《数据库原理》课程后,进行的一次全面的综合训练,其目的在于 加深对数据库原理的理解,掌握运用数据库应用系统开发软件的使用方法。通过此次课 程设计,将理论联系实际,可以增强自己的实践动手能力。 二、项目背景 随着现代科学技术的进步,人类社会正逐步走向信息化。图书馆拥有丰富的文献信息 资源,是社会信息系统的重要组成部分,在信息社会中的作用愈来愈重要。我国图书馆 计算机等信息技术的应用起步于20世纪70年代末期,随着改革开放的步伐得以迅速发展 ,特别是90年代以后,我国图书馆信息网络建设取得了较大发展,图书馆信息化建设迈 上了一个新台阶。 某高校图书馆的要求就是藏书全部开放,师生共享、开架借阅。这种借阅方式是发挥 图书馆应有作用的最佳方式,也是素质教育的最好体现。它充分发挥了图书馆的功效, 最大限度地为师生服务,这也是图书馆自动化管理的最终目标。实现这一目标,必须有 现代化的管理手段和体制,图书馆管理的信息化是一个必然趋势。图书馆的信息化管理 ,就是将传统图书馆业务的手工操作转变成由计算机管理,即将图书馆的图书期刊、音 像资料等各种载体文献的采编、典藏、流通、检索及常规业务管理工作,利用计算机技 术,进行高效、准确的信息化管理。 某高校图书馆管理系统总的实现目标是:建立以馆藏目录为基础的机读书目数据库, 实现馆内采购、编目、流通、文献检索等信息化管理;建立图书馆动态网站;接入校园 网为广大师生及时提供馆内的最新信息。长期的目标还要实现直接浏览电子图书以及馆 际间的图书互借等。 三、可行性研究及需求分析、概要设计 1、可行性研究 随着信息时代的到来,人们对知识的需要日益增长,图书馆的藏书、管理人员、读者 的数量也越来越多。图书馆管理涉及大量的数据处理,如果用手工来完成庞大的数据处 理,将费时费力,还容易出错,为了满足图书馆管理的需要,急需要一套图书馆管理系 统来完成这项工作。作为计算机应用的一部分,使用计算机对图书馆信息进行管理,有 着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保 密性好、寿命长、成本低等。这些优点能够极大地提高图书馆管理的效率,也是企业的 科学化、正规化管理的重要条件。 2、需求分析和概要设计 一般通用的图书馆管理系统包括系统管理、读者管理、编目、图书流通、统计、查询 等功能。比较先进的图书馆管理系统能够在一个界面下实现图书、音像、期刊的管理、 设置假期、设置暂离锁(提高安全性)、暂停某些读者的借阅权、导入导出读者、升级 辅助编目等。此外随着Internet应用的发展,一个完善的系统还应提供无缝接入Intern et的功能,通过IE浏览器让读者使用借阅资料查询、修改密码、预约、资料检索等功能 。有些系统还提供读者自助服务,可以开放一些客户机让读者自行管理密码、查询自己 的借阅情况、预约资料、检索资料等。 下面介绍的是通用图书馆管理系统所必备的功能,如图1所示,包括基本信息维护、 读者管理、图书管理、期刊管理、图书流通管理、期刊流通管理、统计分析管理和系统 管理功能模块,其中每个功能都由若干相关联的子功能模块组成。除此之外系统还应包 括信息系统必须具备的通用功能,例如用户登陆、权限管理、权限设置、数据备份与恢 复等,由于有很多数据库应用方面的书籍对此均有介绍,这里就不再详细介绍了。 图1 图书馆管理系统应包括的基本功能 2.1、基本信息维护模块 "基本信息维护"用于对图书馆信息、书籍信息、常用词库等项目进行初始化设置,这 些设置一般不能轻易改动,包含的子功能模块如图2所示。 图2 "基础信息维护"功能模块 "图书馆信息"用于设置图书馆的基本信息,包括图书馆名称、管长、负责人、电话、说 明等。 "系统参数设置"用于设置系统运行所需的参数,包括办证费用、证件有效期、图书超期 罚款金额、期刊超期罚款金额等。 "书架设置"用于设置书架的基础信息,内容包括书架编号、书架名称等。 "管理员设置"用于设置使用的人员及权限。 "图书期刊词库设置"用于设置系统常用的词库,内容包括供应商、分级、附件、尺寸、 语系、印刷等信息的预先设定值。 2.2、读者管理模块 "读者管理"用于管理与读者有关的信息,包含的子功能模块如图3所示。 图3 "读者管理"功能模块 "读者类型设置"用于设置读者的类型及相关的信息,内容包括图书类型、图书册数、期 刊册数、续借次数、限制图书、限制期刊等。 "读者档案管理"用于设置读者相关的信息,内容包括编号、条形码、姓名、性别、类型 、出生日期、有效证件、证件号码、联系方式、登记日期、有效期至、操作员、备注、 图书借阅次数、期刊借阅次数、是否挂失等。 "借书证挂失与恢复"用于挂失和恢复读者的借书证,挂失
在MATLAB中进行数据库设计有多种方法,具体取决于你的需求和数据类型。以下是一些常见的方法: 1. 使用MATLAB的内置数据库工具: - MATLAB提供了一些内置的数据库工具,如Database Toolbox和Datafeed Toolbox,可用于在MATLAB中设计和管理数据库。这些工具可以连接到各种类型的数据库,如MySQL,Oracle,SQLite等,以及云数据库服务如Amazon RDS和Microsoft Azure SQL Database。 2. 使用MATLAB编程语言进行数据库设计: - 如果你想更多地控制数据库设计过程,可以使用MATLAB编程语言来创建和管理数据库。你可以使用MATLAB提供的函数和类来连接到数据库,执行SQL查询,创建表格和视图等。 3. 使用第三方工具: - 除了MATLAB自带的数据库工具外,还可以使用第三方工具来设计和管理数据库。一些流行的工具如MySQL Workbench,Microsoft SQL Server Management Studio等可以与MATLAB集成,帮助你设计和管理数据库。 在进行数据库设计时,你需要考虑以下几点: - 数据模型:确定数据库中的实体和关系模型。 - 表格设计设计数据库表格结构,并确保正确地处理数据类型、主键、外键等。 - 数据存储与检索:确定如何将数据存储在数据库中,并设计适当的查询来检索数据。 - 数据完整性:确保数据库中的数据完整性,如约束、触发器等。 - 性能优化:对于大型数据库,你需要考虑性能优化策略,如索引、分区等。 请记住,数据库设计需要根据具体需求进行调整,这些只是一些常见的方法和考虑因素。在实际应用中,你可能需要进一步学习和研究数据库设计的最佳实践。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 46
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值