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

article/2025/10/12 21:22:55

如下代码供学习交流,获取完整代码,请关注公众号(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://chatgpt.dhexx.cn/article/oNs7jfMk.shtml

相关文章

数据库设计(一)——数据库设计

一、数据库设计简介 按照规范设计,将数据库的设计过程分为六个阶段: A、系统需求分析阶段 B、概念结构设计阶段 C、逻辑结构设计阶段 D、物理结构设计阶段 E、数据库实施阶段 F、数据库运行与维护阶段 需求分析和概念结构设计独立于任何数据库管理系统…

数据库设计的六个基本步骤

按照规范设计的方法,考虑数据库及其应用系统开发全过程,可将数据库设计分为以下6个阶段,分别为:1.需求分析,2.概念结构设计,3.逻辑结构设计,4.物理结构设计,5.数据库实施&#xff0c…

数据库设计(一)

目录 数据库设计的基本概念: 数据库设计包括以下几个部分: 需求设计: 1、数据: 2、处理: 概念结构设计: 实体: 例如: 联系类型: 1、一对一: 2、一对多&a…

数据库:数据库设计(需求,设计,运行,维护)

1,数据库设计概述 1.1,数据库设计的基本概念 数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据&…

数据库系统-数据库设计

数据库系统-数据库设计 数据库设计概述及六步骤简介 数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求。 数据库设计的特点 数据库设计是一…

学生成绩管理系统数据库设计--MySQLSQL Server

MySQL 数据库设计-学生成绩管理系统 设计大纲友情链接 1、医疗信息管理系统数据库–MySQL2、邮件管理数据库设计–MySQL3、点餐系统数据库设计–SQL Server4、商品管理系统数据库设计–SQL Server5、SQL Server医疗信息管理系统数据库【英文版-源码】–(Medical Ma…

数据库设计-网上书店系统

一、需求分析 1.1 用户分析 网上书店系统的使用者主要有三种:普通用户、会员和管理员。 普通用户:浏览图书、查询图书、注册成为会员等; 会员:浏览图书、查询图书、加入购物车、修改购物车、订购图书、生成及查看订单、查看修改…

数据库设计

数据库设计 一.数据库设计概述1.数据库设计的特点2.数据库设计方法3.数据库设计的基本步骤4.数据库设计过程中的各级模式 二.需求分析1.需求分析的任务2.需求分析的方法3.数据字典 三.概念结构设计1.概念模型2.E-R模型3.概念结构设计 一.数据库设计概述 ①数据库设计是指对于一…

机器学习之PCA

一、PCA基本介绍 PCA(Principal Components Analysis)-主成分分析算法 用于数据降维、可视化、去噪非监督学习算法 二、PCA工作原理 目标:每次将空间中多维的样本点映射到一条直线上(要保证样本点之间的间距最大,用方差衡量,即保…

PCA9536——填坑

0. 问题 使用PCA9536输出模式控制4个小灯,开始时候按几次就不显示了,以为是接线不稳定原因。 后来一按开机电源就不显示了,以为是其他器件电源不稳定导致。 1. 问题1排除 接线问题,重新接线,重新做端子,…

sklearn PCA

sklearn.decomposition.PCA class sklearn.decomposition.PCA(n_componentsNone, *, copyTrue, whitenFalse, svd_solverauto, tol0.0, iterated_powerauto, random_stateNone)官方:link PCA是特征降维中一种 线性降维 的方法。 与特征选择不同(直接筛…

使用PCA对彩色图片降维

PCA对图片降维 1.原图片2.PCA降维思路3.代码4.k5效果图5.结论 1.原图片 2.PCA降维思路 1、小灰灰图片(407,367)2、求图片407行每行的均值mean,再将407行每行元素各自减去对应行的均值mean,即去中心化。得矩阵X&#xf…

使用PCA拟合平面

PCA原理&使用PCA拟合平面 背景三点确定一平面多点拟合平面基础数学知识PCA基本思想PCA拟合平面计算过程 PCA理解中心化协方差对角化 背景 本文参考以下两篇平面解析的论文。 《Fast Plane Extraction in Organized Point Clouds Using Agglomerative Hierarchical Cluster…

Dynamic inner PCA 和 Dynamic PCA

动态PCA方法的核心思想: 将数据X变成增广矩阵,即: l为潜在变量数,然后对X进行传统的PCA方法进行求解,即是动态PCA的结果。 动态内模PCA与之不同,上述动态PCA的一大缺陷是增加了数据的维度,而动…

python实现PCA

★ PCA个人理解: PCA降维是通过变换坐标系,来尽可能的减少信息损失。 ★ PCA思路: 我们的初始矩阵为X,它是mn维的矩阵,其中:m是该数据集有m条记录,n是每条记录中有n个特征,X的基本格…

PCA降维算法

目录 1.维度1.1数据维度1.2特征维度 2.sklearn中的降维算法2.1PCA与SVD2.2降维的实现2.3重要参数n_components2.3.1最大似然估计自选超参数2.3.2 按信息量占比选超参数 3.PCA中的SVD3.1重要参数svd_solver 与 random_state3.2重要属性components_3.3重要接口inverse_transform …

PCA降维

一、主成分分析 1、动机:多个变量之间往往存在一定的相关性,可以通过线性组合的方式从中提取信息。 2、主成分分析:将原始的n维数据投影到低维空间,并尽可能的保留更多的信息。 ---投影后方差最大 ---最小化重构误差 从而达到…

pca绘图

pca 1 PCAtools 1.1 加载R包 library(PCAtools) library(tidyverse)1.2 加载数据&#xff0c;构建表达矩阵和分组信息&#xff08;以iris为例&#xff09; iris <- as.data.frame(iris) iris <- iris %>% mutate(class str_c("a",1:dim(iris)[1],sep …

PCA算法详解

文章出处&#xff1a;http://blog.csdn.net/zhongkelee/article/details/44064401 一、PCA简介 1. 相关背景 上完陈恩红老师的《机器学习与知识发现》和季海波老师的《矩阵代数》两门课之后&#xff0c;颇有体会。最近在做主成分分析和奇异值分解方面的项目&#xff0c;所以记…

PCA 算法详解

PCA算法步骤&#xff1a; 设有m条n维数据。 1&#xff09;将原始数据按列组成n行m列矩阵X 2&#xff09;将X的每一行&#xff08;代表一个属性字段&#xff09;进行零均值化&#xff0c;即减去这一行的均值 3&#xff09;求出协方差矩阵 4&#xff09;求出协方差矩阵的特征值及…