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

zz/2024/3/1 14:33:44

如下代码供学习交流,获取完整代码,请关注文后二维码(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加油站)回复“数据库图书”免费获取 


http://www.ngui.cc/zz/1545180.html

相关文章

数据库 书籍推荐

前段时间开始自学数据库,学了一段时间下来,看了好几本书了,品味一下,有几本感觉对刚接触数据库(甚至是数据库高手)的兄弟们来说是相当不错的所以向大家推荐一下: 一&am…

Java jdbc连接数据库 图书管理系统实现添加图书功能

import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; import java.util.Scanner; /* 需求: 图书管理系统 (1)实现图书的增删改查功能,并保存信息到数…

主流数据库书籍电子版下载汇总贴 84本

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!主流数据库书籍电子版下载汇总贴&#xff08…

广播风暴≠网络环路

广播风暴 1、特定条件出现,不持续; 2、由局域网架构的缺陷导致; 3、需要通过VLAN划分来解决。 网络环路 1、可持续; 2、属于网络故障; 3、丢包情况比较严重; 4、解决只需要拔掉环路设备或网线即可。…

如何快速发现及解决网络环路问题

网络环路问题对企业网络存在很大的威胁,它会造成网络里的广播风暴,耗尽交换资源,造成交换机瘫痪。当网络环路发生时,会出现网络及应用访问缓慢、网络丢包甚至无法正常提供服务等异常。通常在大型的网络中发现网络环路并定位交换机…

内网环路怎么解决_利用生成树协议巧妙解决局域网二层环路

【IT168 技术】本文主要介绍局域网交换技术,也称为层2交换技术,内容主要包括层2交换的工作原理、网络环路、如何利用Spanning-Tree Protocol 来解决网络环路。在介绍交换技术之前不得不提一下传统的共享以太网的工作方式,了解一下冲突域&…

网络设备环路测试

测试网络设备是否有环路 可以将新加入的地址的,开始和边源 例如: 10.110.0.64 255.255.255.192 我们可以测试一下10.110.0.64和10.110.0.65地址 具体操作方法为: windows系统tracert 10.110.0.64和tracert 10.110.0.65 linux系统traceroute 1…

企业内部网路怎么防止网络出现环路?

企业内部网路怎么防止网络出现环路?学会STP生成树协议就可以解决啦! STP简介 在二层交换网络中,一旦存在环路就会造成报文在环路内不断循环和增生,产生广播风暴,从而占用所有的有效带宽,使网络变得无法 …

STP生成树协议切割网络环路

一、适用场景 在一个复杂的网络中,网络规划者由于冗余备份的需要,一般都倾向于在设备之间部署多条物理链路,其中一条作主用链路,其他链路作备份。这样就难免会形成环形网络,若网络中存在环路,可能会引起广…

bpduguard使用在接着虚拟机的服务器上,避免网络环路:STP和VMware vSwitch

STP是一个古老的协议,把它从故纸堆里扒出来是因为对理解现而今的数据中心网络的防环还是有一定帮忙的。在VMware环境中,VM连接的网络是虚拟的,是否会有环路吗?STP(Spanning Tree Protocol)是生成树协议的英文缩写。该协议可应用于…