From b2bd3b4542f16a2d68fc1b2a0dc6654021d34d75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B7=AF=E7=8E=B2?= <1516489926@qq.com> Date: Sun, 10 Sep 2023 23:00:03 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9B=BE=E4=B9=A6=E7=AE=A1=E7=90=86=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...41\347\220\206\347\263\273\347\273\237.md" | 145 ++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 "29 \350\267\257\347\216\262/20230907 \345\233\276\344\271\246\347\256\241\347\220\206\347\263\273\347\273\237.md" diff --git "a/29 \350\267\257\347\216\262/20230907 \345\233\276\344\271\246\347\256\241\347\220\206\347\263\273\347\273\237.md" "b/29 \350\267\257\347\216\262/20230907 \345\233\276\344\271\246\347\256\241\347\220\206\347\263\273\347\273\237.md" new file mode 100644 index 0000000..83c8288 --- /dev/null +++ "b/29 \350\267\257\347\216\262/20230907 \345\233\276\344\271\246\347\256\241\347\220\206\347\263\273\347\273\237.md" @@ -0,0 +1,145 @@ +# 笔记 + +软件PowerDesigner: + + + +| Serial:自增 | character:等于char,可设置长度 | integer:整数 | +| ----------- | ------------------------------- | ------------- | +| M:非空 | P:主键 | D:是否显示 | + + + +使用步骤; + +1.创建概念模型(类似与ER图),以用户的角度,简称CDM。 + +方法:点击PowerDesigner----找到File----选择Now Model ----Model types ----Conceptual Data Model---ok. + +点击拖动图标,右键取消 + +2.转换成逻辑模型,以计算机的角度,简称LDM,可以把多对多关系的第三张表创建出来。 + +方法:选择Tools----找到Generato Logical Data Model ---修改名字 + +3.转换成物理模型,以数据库的角度,简称PDM。 + +方法:选择Tools----找到Generato Physical Data Model ---选择MySQL5.0或者你拥有的版本MySQL,并改名字----ok-----选择database-----命名,后缀名为sql------以navicat打开。 + +# 作业(图书管理系统) + +```mysql +-- 创建数据库 +create database t_books charset utf8; +-- 使用数据库 +use t_books; +/*==============================================================*/ +/* DBMS name: MySQL 5.0 */ +/* Created on: 2023/9/10 21:16:22 */ +/*==============================================================*/ + + +drop table if exists book_borrowing;-- 图书借阅 + +drop table if exists book_retrieval;-- 图书信息 + +drop table if exists return_books; -- 归还图书 + +drop table if exists user; -- 用户登录 + +/*==============================================================*/ +/* Table: book_borrowing */ +/*==============================================================*/ +create table book_borrowing -- 图书借阅 +( + bb_id int not null auto_increment, -- 借阅编号 + b_id int not null, -- 用户编号 + borrow_date date not null, -- 借书日期 + expiry_date date not null, -- 终止日期 + primary key (bb_id) +); + + + +/*==============================================================*/ +/* Table: book_retrieval */ +/*==============================================================*/ +create table book_retrieval -- 图书信息 +( + b_id int not null auto_increment, -- 图书编号 + u_id int not null, -- 用户编号 + b_name char(20) not null, -- 书籍名称 + author char(20) not null, -- 作者 + quantity int not null, -- 图书数量 + floor char(5) not null, -- 楼层 + price numeric(20,2), -- 书籍价格 + shelf_number int, -- 书架号 + primary key (b_id) +); + + +/*==============================================================*/ +/* Table: return_books */ +/*==============================================================*/ +create table return_books -- 归还图书 +( + rb_id int not null auto_increment, -- 归还编号 + u_id int not null, -- 用户编号 + b_id int not null, -- 书籍编号 + return_book date, -- 归还日期 + primary key (rb_id) +); + + + +/*==============================================================*/ +/* Table: user */ +/*==============================================================*/ +create table user -- 用户登录 +( + u_id int not null auto_increment, -- 用户编号 + u_name char(10) not null, -- 用户名称 + u_password char(10) not null, -- 用户密码 + primary key (u_id) +); + +alter table book_borrowing add constraint FK_borrow foreign key (b_id) + references book_retrieval (b_id) on delete restrict on update restrict; + +alter table book_retrieval add constraint FK_check foreign key (u_id) + references user (u_id) on delete restrict on update restrict; + +alter table return_books add constraint FK_return foreign key (u_id) + references user (u_id) on delete restrict on update restrict; + +alter table return_books add constraint FK_return_books foreign key (b_id) + references book_retrieval (b_id) on delete restrict on update restrict; + + +-- 添加数据 + +insert into user values -- 用户登录 +(001,'张三','123'), +(002,'李四','456'), +(003,'王五','789'); + + +insert into book_retrieval values -- 图书信息 +(201,001,'水浒传','施耐庵',3,'五楼',99.9,707), +(202,002,'三国演义','罗贯中',2,'五楼',89.9,708), +(203,003,'西游记','吴承恩',4,'五楼',100,709); + +insert into book_borrowing values -- 图书借阅 +(301,201,'2023-04-16','2023-05-16'), +(302,202,'2023-04-16','2023-05-16'), +(303,203,'2023-04-16','2023-05-16'); + + +insert into return_books values -- 归还图书 +(401,001,201,'2023-04-25'), +(402,002,202,'2023-05-10'), +(403,003,203,'2023-05-16'); + + +``` + -- Gitee