返回

Python设计图书馆管理系统技术文档(二)

发布时间:2023-01-10 04:26:41 297
# 数据库# sql# 数据# 技术# 信息

(Python设计图书馆管理系统技术文档(二))

Python设计图书馆管理系统技术文档(二)

4. 数据库设计

  • 下面是数据库中四个表的生成命令。
create table User
(
    StudentId     CHAR(10) not null
        unique,
    Name          VARCHAR(20) not null,
    Password      CHAR(32) not null,
    IsAdmin       BIT default 0,
    TimesBorrowed INT default 0,
    NumBorrowed   INT default 0
);

create table Book
(
    BookName     VARCHAR(30) not null,
    BookId       CHAR(6)     not null,
    Auth         VARCHAR(20) not null,
    Category     VARCHAR(10) default NULL,
    Publisher    VARCHAR(30) default NULL,
    PublishTime  DATE,
    NumStorage   INT         default 0,
    NumCanBorrow INT         default 0,
    NumBorrowed  INT         default 0
);

create table User_Book
(
    StudentId   CHAR(10) not null,
    BookId      CHAR(6)  not null,
    BorrowTime  DATE,
    ReturnTime  DATE,
    BorrowState BIT default 0
);

create table BuyOrDrop
(
    BookId    CHAR(6) not null,
    Time      DATE,
    BuyOrDrop BIT default 0,
    Number    INT default 0
);
  • 用户表中管理员和一个用户的插入命令
INSERT INTO User (StudentId, Name, Password, IsAdmin, TimesBorrowed, NumBorrowed) VALUES ('admin', 'admin', '21232f297a57a5a743894a0e4a801fc3', 1, 0, 0);
INSERT INTO User (StudentId, Name, Password, IsAdmin, TimesBorrowed, NumBorrowed) VALUES ('001', '拾叶', '93dd4de5cddba2c733c65f233097f05a', 0, 0, 0);

4.1 E-R图

  • User(用户)表E-R图 

  • Book(图书)表E-R图 

  • User_Book(借阅情况)表E-R图 

  • BuyOrDrop(购买/淘汰)表E-R图 

4.2 数据结构

  • 数据库采用的是Sqlite3数据库建立,系统主要需要维护4个数据表:

4.2.1 用户信息表(User)

字段名 类型 宽度 是否为空 默认值 说明
StudentId CHAR 10   用户ID
Name VARCHAR 20   用户名
Password CHAR 32   密码
IsAdmin BIT     是否管理员
TimesBorrowed INT     借阅时间
NumBorrowed INT     借阅数量

4.2.2 图书信息表(Book)

字段名 类型 宽度 是否为空 默认值 说明
BookName VARCHAR 30   图书名
BookId CHAR 6   图书ID
Auth VARCHAR 20   作者
Category VARCHAR 10 Null 用户名
Publisher VARCHAR 30 Null 出版社
PublishTime DATE     出版时间
NumStorage INT     库存数量
NumCanBorrow INT     可借阅量
NumBorrowed INT     借阅数量

4.2.3 用户借书信息表(User_Book)

字段名 类型 宽度 是否为空 默认值 说明
StudentId CHAR 10   用户ID
BookId CHAR 6   图书ID
BorrowTime DATE     借阅时间
ReturnTime DATE     归还时间
BorrowState BIT     借阅状态

4.2.4 管理图书信息表(BuyOrDrop)

字段名 类型 宽度 是否为空 默认值 说明
BookId CHAR 6   图书户ID
Time DATE     出版时间
BuyOrDrop BIT     添加删除
Number INT     数量
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线