图书馆借阅表
DDL
用户表 (Users)
图书表 (Books)
图书类别表 (BookCategories)
图书与类别关联表 (BookCategoryRelations)
借阅记录表 (BorrowRecords)
供应商表 (Suppliers)
采购记录表 (PurchaseRecords)
CREATE TABLE Users (user_id INT PRIMARY KEY AUTO_INCREMENT,username VARCHAR(50) NOT NULL UNIQUE,password VARCHAR(255) NOT NULL,email VARCHAR(100),phone VARCHAR(20),created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE Books (book_id INT PRIMARY KEY AUTO_INCREMENT,title VARCHAR(255) NOT NULL,author VARCHAR(100) NOT NULL,publisher VARCHAR(100),publication_year YEAR,ISBN VARCHAR(13) UNIQUE,stock_quantity INT NOT NULL DEFAULT 0
);
CREATE TABLE BookCategories (category_id INT PRIMARY KEY AUTO_INCREMENT,category_name VARCHAR(100) NOT NULL UNIQUE
);
CREATE TABLE `bookcategoryrelations` (`relation_id` int(11) NOT NULL AUTO_INCREMENT,`book_id` int(11) DEFAULT NULL,`category_id` int(11) DEFAULT NULL,PRIMARY KEY (`relation_id`),UNIQUE KEY `book_id` (`book_id`,`category_id`),KEY `bookcategoryrelations_ibfk_2` (`category_id`),CONSTRAINT `bookcategoryrelations_ibfk_1` FOREIGN KEY (`book_id`) REFERENCES `books` (`book_id`) ON DELETE NO ACTION ON UPDATE NO ACTION,CONSTRAINT `bookcategoryrelations_ibfk_2` FOREIGN KEY (`category_id`) REFERENCES `bookcategories` (`category_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
);
CREATE TABLE BorrowRecords (record_id INT PRIMARY KEY AUTO_INCREMENT,user_id INT,book_id INT,borrow_date DATE NOT NULL,return_date DATE,FOREIGN KEY (user_id) REFERENCES Users(user_id),FOREIGN KEY (book_id) REFERENCES Books(book_id)
);
CREATE TABLE Suppliers (supplier_id INT PRIMARY KEY AUTO_INCREMENT,supplier_name VARCHAR(100) NOT NULL,contact_name VARCHAR(100),phone VARCHAR(20),email VARCHAR(100)
);
CREATE TABLE `purchaserecords` (`record_id` int(11) NOT NULL AUTO_INCREMENT,`supplier_id` int(11) DEFAULT NULL,`book_id` int(11) DEFAULT NULL,`purchase_date` date NOT NULL,`quantity` int(11) NOT NULL,`price` decimal(10,2) NOT NULL,PRIMARY KEY (`record_id`),KEY `supplier_id` (`supplier_id`),KEY `book_id` (`book_id`),CONSTRAINT `purchaserecords_ibfk_1` FOREIGN KEY (`supplier_id`) REFERENCES `suppliers` (`supplier_id`),CONSTRAINT `purchaserecords_ibfk_2` FOREIGN KEY (`book_id`) REFERENCES `books` (`book_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
DML
INSERT INTO Users (username, password, email, phone)
VALUES ('user1', 'pass1', 'user1@example.com', '1234567890');INSERT INTO Users (username, password, email, phone)
VALUES ('user2', 'pass2', 'user2@example.com', '0987654321');INSERT INTO Users (username, password, email, phone)
VALUES ('user3', 'pass3', NULL, '1112223333');INSERT INTO Users (username, password, email, phone)
VALUES ('user4', 'pass4', 'user4@example.com', NULL);INSERT INTO Users (username, password, email, phone)
VALUES ('user5', 'pass5', 'user5@example.com', '5556667777');INSERT INTO Users (username, password, email, phone)
VALUES ('user6', 'pass6', NULL, '9998887777');INSERT INTO Users (username, password, email, phone)
VALUES ('user7', 'pass7', 'user7@example.com', '7778889999');INSERT INTO BookCategoryRelations (book_id, category_id)
VALUES (1, 1);INSERT INTO BookCategoryRelations (book_id, category_id)
VALUES (2, 2);INSERT INTO BookCategoryRelations (book_id, category_id)
VALUES (3, 3);INSERT INTO BookCategoryRelations (book_id, category_id)
VALUES (4, 4);INSERT INTO BookCategoryRelations (book_id, category_id)
VALUES (5, 5);INSERT INTO BookCategoryRelations (book_id, category_id)
VALUES (6, 6);INSERT INTO BookCategoryRelations (book_id, category_id)
VALUES (7, 7);INSERT INTO Books (title, author, publisher, publication_year, ISBN, stock_quantity)
VALUES ('Book 1', 'Author 1', 'Publisher 1', 2020, '1234567890123', 10);INSERT INTO Books (title, author, publisher, publication_year, ISBN, stock_quantity)
VALUES ('Book 2', 'Author 2', 'Publisher 2', 2019, '2345678901234', 15);INSERT INTO Books (title, author, publisher, publication_year, ISBN, stock_quantity)
VALUES ('Book 3', 'Author 3', 'Publisher 3', 2021, '3456789012345', 20);INSERT INTO Books (title, author, publisher, publication_year, ISBN, stock_quantity)
VALUES ('Book 4', 'Author 4', 'Publisher 4', 2018, '4567890123456', 25);INSERT INTO Books (title, author, publisher, publication_year, ISBN, stock_quantity)
VALUES ('Book 5', 'Author 5', 'Publisher 5', 2022, '5678901234567', 30);INSERT INTO Books (title, author, publisher, publication_year, ISBN, stock_quantity)
VALUES ('Book 6', 'Author 6', 'Publisher 6', 2023, '6789012345678', 35);INSERT INTO Books (title, author, publisher, publication_year, ISBN, stock_quantity)
VALUES ('Book 7', 'Author 7', 'Publisher 7', 2024, '7890123456789', 40);INSERT INTO BookCategories (category_name)
VALUES ('Category 1');INSERT INTO BookCategories (category_name)
VALUES ('Category 2');INSERT INTO BookCategories (category_name)
VALUES ('Category 3');INSERT INTO BookCategories (category_name)
VALUES ('Category 4');INSERT INTO BookCategories (category_name)
VALUES ('Category 5');INSERT INTO BookCategories (category_name)
VALUES ('Category 6');INSERT INTO BookCategories (category_name)
VALUES ('Category 7');INSERT INTO BorrowRecords (user_id, book_id, borrow_date, return_date)
VALUES (1, 1, '2024-07-01', '2024-07-15');INSERT INTO BorrowRecords (user_id, book_id, borrow_date, return_date)
VALUES (2, 2, '2024-07-05', '2024-07-20');INSERT INTO BorrowRecords (user_id, book_id, borrow_date, return_date)
VALUES (3, 3, '2024-07-10', NULL);INSERT INTO BorrowRecords (user_id, book_id, borrow_date, return_date)
VALUES (4, 4, '2024-07-15', NULL);INSERT INTO BorrowRecords (user_id, book_id, borrow_date, return_date)
VALUES (5, 5, '2024-07-20', NULL);INSERT INTO BorrowRecords (user_id, book_id, borrow_date, return_date)
VALUES (6, 6, '2024-07-25', NULL);INSERT INTO BorrowRecords (user_id, book_id, borrow_date, return_date)
VALUES (7, 7, '2024-07-30', NULL);INSERT INTO Suppliers (supplier_name, contact_name, phone, email)
VALUES ('Supplier 1', 'Contact 1', '1234567890', 'upplier1@example.com');INSERT INTO Suppliers (supplier_name, contact_name, phone, email)
VALUES ('Supplier 2', 'Contact 2', '0987654321', 'upplier2@example.com');INSERT INTO Suppliers (supplier_name, contact_name, phone, email)
VALUES ('Supplier 3', 'Contact 3', '1112223333', 'upplier3@example.com');INSERT INTO Suppliers (supplier_name, contact_name, phone, email)
VALUES ('Supplier 4', 'Contact 4', '4445556666', 'upplier4@example.com');INSERT INTO Suppliers (supplier_name, contact_name, phone, email)
VALUES ('Supplier 5', 'Contact 5', '7778889999', 'upplier5@example.com');INSERT INTO Suppliers (supplier_name, contact_name, phone, email)
VALUES ('Supplier 6', 'Contact 6', '0001112222', 'upplier6@example.com');INSERT INTO Suppliers (supplier_name, contact_name, phone, email)
VALUES ('Supplier 7', 'Contact 7', '3334445555', 'upplier7@example.com');INSERT INTO PurchaseRecords (supplier_id, book_id, purchase_date, quantity, price)
VALUES (1, 1, '2024-06-01', 50, 20.00);INSERT INTO PurchaseRecords (supplier_id, book_id, purchase_date, quantity, price)
VALUES (2, 2, '2024-06-05', 40, 18.00);INSERT INTO PurchaseRecords (supplier_id, book_id, purchase_date, quantity, price)
VALUES (3, 3, '2024-06-10', 30, 25.00);INSERT INTO PurchaseRecords (supplier_id, book_id, purchase_date, quantity, price)
VALUES (4, 4, '2024-06-15', 20, 30.00);INSERT INTO PurchaseRecords (supplier_id, book_id, purchase_date, quantity, price)
VALUES (5, 5, '2024-06-20', 15, 22.00);INSERT INTO PurchaseRecords (supplier_id, book_id, purchase_date, quantity, price)
VALUES (6, 6, '2024-06-25', 10, 15.00);INSERT INTO PurchaseRecords (supplier_id, book_id, purchase_date, quantity, price)
VALUES (7, 7, '2024-06-30', 5, 10.00);
相关文章:
图书馆借阅表
DDL 用户表 (Users) 图书表 (Books) 图书类别表 (BookCategories) 图书与类别关联表 (BookCategoryRelations) 借阅记录表 (BorrowRecords) 供应商表 (Suppliers) 采购记录表 (PurchaseRecords) CREATE TABLE Users (user_id INT PRIMARY KEY AUTO_INCREMENT,username …...
云动态摘要 2024-06-25
给您带来云厂商的最新动态,最新产品资讯和最新优惠更新。 最新产品更新 Web应用防火墙 - 验证码支持微信小程序接入 阿里云 2024-06-25 支持客户从微信小程序场景下接入,提供人机识别的安全防护。 工业数字模型驱动引擎 - iDME控制台换新升级 华为云…...
Docker编译nanopc-t4源码流程介绍
官方文档 Android系统编译 vnc加环境变量配置 https://github.com/friendlyarm/docker-cross-compiler-novnc 下载 git clone https://github.com/friendlyarm/docker-ubuntu-lxde-novnc cd docker-ubuntu-lxde-novnc docker build --no-cache -t docker-ubuntu-lxde-novnc …...
Redis八股文目录
Redis缓存穿透-CSDN博客 Redis缓存击穿-CSDN博客 Redis缓存雪崩(主从复制、哨兵模式(脑裂)、分片集群)-CSDN博客 Redis双写一致性-CSDN博客 Redis持久化-CSDN博客 Redis数据过期、淘汰策略-CSDN博客 分布式锁(Re…...
Ext JS+Spring Boot 使用Ajax方式上传文件
实现方式 使用 Ext JS 进行 AJAX 调用以传递文件通常涉及到创建一个 FormData 对象,将文件附加到这个对象中,然后通过 Ext JS 的 AJAX API 发送这个对象。 基本步骤 以下是使用 Ext JS 发送文件的基本步骤: 准备文件和数据: 首先需要获取到要传递的文件 创建 FormData 对…...
windows桌面运维----第九天
1、新的电脑需要安装哪些驱动: 显卡驱动、声卡驱动、主板驱动、网卡驱动、打印机驱动、外设驱动、 2、网络打印机如何开启打印机共享核客户端连接共享打印机: 一、打开控制面板并定位到设备和打印机: 首先,我们在电脑桌面上找…...
【Docker】安装和加速
目录 1.安装 2.了解 docker 信息 3.查询状态 4. 重新启动Docker 1.安装 yum install –y docker 2.了解 docker 信息 cat /etc/redhat-release 3.查询状态 systemctl status docker 4.支持 1.12 的 docker 镜像加速 sudo mkdir -p /etc/docker sudo tee /etc/docke…...
如何关闭win10音量调节时 左上角出现的黑框
目录 1.谷歌浏览器: 2.edge浏览器: 3.没得办法的办法: 4.官方回复: 1.谷歌浏览器: 把这行地址chrome://flags/#hardware-media-key-handling 输入到chrome的地址栏里,回车,把黄色里的Hardwa…...
准确率(accuracy)、召回率(recall)的意义和区别
准确率(accuracy)、召回率(recall)的意义和区别 对于准确率和召回率:一句话,准确率就是“找的对”,召回率就是“找的全” (精确率:正样本中找对的准确率) 注…...
分享5个卫星影像查看网站
我们在《分享5个图源二维码及使用方法》一文中,为你分享了5个图源二维码。 现在再为你为分享5种在线卫星影像,如果你需要更多的图源二维码,请在文末查看领取方式。 MapBox卫星影像 可能很多人都知道MapBox的地名路网地图,但可能…...
37岁,被裁员,失业三个月,被面试官嫌弃“太水”:就这也叫10年以上工作经验?
今年部门要招两个自动化测试,这几个月我面试了几十位候选人。发现一个很奇怪的现象,面试中一问到元素定位、框架api、脚本编写之类的,很多候选人都对答如流。但是一问到实际项目,比如“项目中UI自动化和接口自动化如何搭配使用&am…...
如何选择一款优质的酱香酒?
很多人在评价一款酒的好坏时,往往只关注一个标准:口感是否顺滑。然而,真正品鉴一款酒的品质,首要的是香味,其次是味道,最后才是岁月带来的柔和。这种由岁月赋予的柔和,才能展现出酒的力量感和层…...
SQL Server数据库安装
原文:https://blog.c12th.cn/archives/26.html SQL Server数据库安装 测试:笔记本原装操作系统:Windows 10 家庭中文版 资源分享链接:提取码:qbt2 注意事项: 请严格按照步骤安装,SQL软件安装较…...
Hadoop 面试题(十)
1. 简述下列关于Hadoop命令中,命令执行成功返回0,执行失败返回-1,下列命令返回-1的是 ? A:hadoop fs -mv /user/hadoop/file1 /user/hadoop/file2 B:hdfs dfs -mv hdfs:///testData file:///tmp/testData …...
Python网络安全项目开发实战,如何看清Web攻击
注意:本文的下载教程,与以下文章的思路有相同点,也有不同点,最终目标只是让读者从多维度去熟练掌握本知识点。 下载教程: Python网络安全项目开发实战_看清Web攻击_编程案例解析实例详解课程教程.pdf 一、引言 在网络安全领域,Web攻击一直是一个严峻的问题。攻击者通过各…...
持续总结中!2024年面试必问的操作系统面试题(三)
上一篇地址:持续总结中!2024年面试必问的操作系统面试题(二)-CSDN博客 五、什么是分页和分段?它们之间有什么区别? 分页和分段是操作系统中用于内存管理的两种不同技术,它们都旨在允许操作系统…...
请说明Thread类中run和start的区别,从方法的区别,及运行结果的区别分别说明
方法本身的区别 start() 方法: run()方法是Thread类的一个普通方法,它包含了线程要执行的代码。当你直接调用一个线程的run()方法(如myThread.run()),你实际上是在当前线程(通常是主线程)中执行…...
MySQL:概念、逻辑与物理结构设计详解
MySQL:概念、逻辑与物理结构设计详解 一、引言 MySQL是一个流行的开源关系型数据库管理系统(RDBMS),广泛应用于各种规模和类型的应用程序中。在设计和实现一个MySQL数据库时,理解其基本概念、逻辑结构设计和物理结构…...
《昇思 25 天学习打卡营第 6 天 | 函数式自动微分 》
《昇思 25 天学习打卡营第 6 天 | 函数式自动微分 》 活动地址:https://xihe.mindspore.cn/events/mindspore-training-camp 签名:Sam9029 函数式自动微分 自动微分是深度学习中的一个核心概念,它允许我们自动计算模型参数的梯度,…...
刷题——二叉树的中序遍历
双指针法 void midorder(vector<int>&res, TreeNode* root){if(root NULL) return;midorder(res, root->left);res.push_back(root->val);midorder(res, root->right);}vector<int> inorderTraversal(TreeNode* root) {// write code herevector<…...
在软件开发中正确使用MySQL日期时间类型的深度解析
在日常软件开发场景中,时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志,到供应链系统的物流节点时间戳,时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库,其日期时间类型的…...
是否存在路径(FIFOBB算法)
题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...
基于matlab策略迭代和值迭代法的动态规划
经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...
安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖
在Vuzix M400 AR智能眼镜的助力下,卢森堡罗伯特舒曼医院(the Robert Schuman Hospitals, HRS)凭借在无菌制剂生产流程中引入增强现实技术(AR)创新项目,荣获了2024年6月7日由卢森堡医院药剂师协会࿰…...
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
MFC 抛体运动模拟:常见问题解决与界面美化
在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...
Canal环境搭建并实现和ES数据同步
作者:田超凡 日期:2025年6月7日 Canal安装,启动端口11111、8082: 安装canal-deployer服务端: https://github.com/alibaba/canal/releases/1.1.7/canal.deployer-1.1.7.tar.gz cd /opt/homebrew/etc mkdir canal…...
统计按位或能得到最大值的子集数目
我们先来看题目描述: 给你一个整数数组 nums ,请你找出 nums 子集 按位或 可能得到的 最大值 ,并返回按位或能得到最大值的 不同非空子集的数目 。 如果数组 a 可以由数组 b 删除一些元素(或不删除)得到,…...
安宝特案例丨寻医不再长途跋涉?Vuzix再次以AR技术智能驱动远程医疗
加拿大领先科技公司TeleVU基于Vuzix智能眼镜打造远程医疗生态系统,彻底革新患者护理模式。 安宝特合作伙伴TeleVU成立30余年,沉淀医疗技术、计算机科学与人工智能经验,聚焦医疗保健领域,提供AR、AI、IoT解决方案。 该方案使医疗…...
【中间件】Web服务、消息队列、缓存与微服务治理:Nginx、Kafka、Redis、Nacos 详解
Nginx 是什么:高性能的HTTP和反向代理Web服务器。怎么用:通过配置文件定义代理规则、负载均衡、静态资源服务等。为什么用:提升Web服务性能、高并发处理、负载均衡和反向代理。优缺点:轻量高效,但动态处理能力较弱&am…...
