0
点赞
收藏
分享

微信扫一扫

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 条评论