目的
本文为图书馆管理课程设计SQL Server功能规范说明书。本说明书将:
描述数据库设计的目的
说明数据库设计中的主要组成部分
说明数据库设计中各功能的实现
内容
本文档主要内容包括对数据库设计结构的总体描述,对数据库中各种对象的描述(包括对象的名称、对象的属性、对象和其他对象直接的关系)。本文档中包含对以下数据库内容的描述:
数据表
视图
存储过程
触发器
约束
在数据库主要对象之外,本文还将描述数据库安全性设置、数据库属性设置和数据库备份策略,为数据库管理员维护数据库安全稳定地运行提供参考。
与其他项目的关联
本项目的数据库设计与本项目(Web部分和Windows部分)功能密切相关。本案例项目的数据库将按照项目程序部分的功能需求而设计,数据库设计将配合设计案例的程序部分,以实现一个功能完备的真实环境内的应用。
表设计概述
根据设计的系统功能,数据库将以图书信息为中心存储相关数据,配合 SQL Server 数据库系统中提供的数据管理,实现图书的借阅、归还、续借及系统设置等业务功能。
数据库设计将以存储读者信息的读者表为基础,连接多张相关表以实现对以下关系的支持:
顾客浏览记录
顾客订购记录
顾客退订记录
顾客付款记录
顾客对花卉的评价
顾客对花卉的建议及留言
图 01
顾客用户信息表(ReaderInfo)
概述
顾客用户信息表用于记录顾客基本信息,并作为基础表与其他表连接。
表定义
读者用户信息表定义如表 01所示。
表 01
字段
类型
可否为空
备注
Username
nvarchar(10)
ID
int
Passwd
char(8)
Name
nvarchar(10)
Sex
char(2)
Age
int
StuNum
Numeric
PlaceStrand
nvarchar(50)
PlaceClass
nvarchar
ValidCard
nvarchar(50)
BookCard
nvarchar(10)
CreateTime
datetime
ExpiredTime
datetime
主键
用户信息表的主键是用户信息表编号字段,类型为整型,设置自动增量。
约束
索引
主键用户信息ID具有自动创建的聚集索引。
管理员用户信息表(UserInfo)
概述
管理员用户信息表用于记录系统管理员的各项资料。表中都记录了管理员的账号和密码,是各用户的详细记录。。
表定义
管理员用户信息表定义如表 02所示。
表 02
字段
类型
可否为空
备注
ID
Numeric
不否
Username
nvarchar(10)
不否
Passwd
char(8)
不否
Type
nvarchar(14)
不否
主键
管理员用户信息表的主键是管理员用户ID号,类型为整型,设置自动增量。
约束
无其他约束。
索引
主键字段管理员编号具有自动创建的聚集索引。
用户类别表(ReaderType)
读者类别表用于记录顾客信息,包括名字、地址等。
表定义
读者类别表定义如表 03所示。
表 03
字段
类型
可否为空
备注
ID
int
Name
nvarchar(10)
ReaderID
int
Canborrow
int
主键
读者类别表的主键是读者表ID字段,类型为整型,设置自动增量。
约束
无其他约束。
索引
主键字段薪资编号具有自动创建的聚集索引。
花束信息表(BookInfo)
图书信息表用于记录花束信息(花束名称、花束等),通过字段花束类别号与花束类别表关联。
表定义
图书信息表定义如表 04所示。
表 04
名称
类型
可否为空
备注
ID
nvarchar(20)
Name
nvarchar(50)
Typeid
int
State
binary
Creattime
datetime
Price
money
Press
nvarchar(50)
IsCancellation
binary
IDCancellation
int
Note
nvarchar(50)
Author
nvarchar(10)
Page
int
主键
花束信息表的主键是花束编号字段,类型为整型。
约束
花束信息表中的图书编号不可相同;花束信息表中的状态类型字段只能取“被借”、“续借”、“以还”。
索引
主键字段考勤编号具有自动创建的聚集索引。
花束类别表(BookType)
花束类别表用于记录图书的类别。图书类别表中的基本信息包括:花束的类别、花束的花语,花束的价格。
表定义
图书类别表定义如表 05所示。
表 05
字段
类型
可否为空
备注
Typeid
int
Typename
nvarchar(50)
主键
花束类别表的主键是Typeid字段,类型为整型,设置自动增量。
约束
订购开始时间应小于付款结束时间;
索引
主键字段请假申请编号具有自动创建的聚集索引。
花卉库存表(BookStock)
概述
花卉库存表用于花卉总库存的记录。库存表中的基本信息包括:花卉ID。通过字段,图书ID与花卉信息表关联。
表定义
图书库存表定义如表 06所示。
表 06
字段
类型
可否为空
备注
ID
int
BookID
nvarchar(20)
索引
主键字段加班申请编号具有自动创建的聚集索引。
表定义
借书表定义如
表 07所示。
表 07
字段
类型
可否为空
备注
ID
Numeric
BookID
nvarchar(20)
CardID
Numeric
BorrowTime
datetime
ReturnTime
datetime
IsReturn
nvarchar(10)
索引
主键字段业绩评定编号具有自动创建的聚集索引。
评价表(Evaluate)
概述
评价表用于保存顾客对花卉看法的记录。评价表中的基本信息包括:评价ID、花卉ID、评价等。
表定义
评价表定义如表 09所示。
表 09
字段
类型
可否为空
备注
ID
int
BookID
int
代码大全书籍ReaderID
nvarchar(20)
Evaluate
nvarchar(50)
主键
评价表的主键是评价编号字段,类型为整型,设置自动增量。
约束
无其他约束。
索引
主键字段评价编号具有自动创建的聚集索引。
花卉证表(BookCard)
概述
花卉证表用于记录图书证ID信息。花卉证表的基本信息包括:花卉证表编号、顾客编号等。
表定义
图书证表定义如表 012所示。
表 012
字段
类型
可否为空
备注
ID
Numeric
ReaderID
int
Borrowed
int
主键
图书证表的主键是图书证ID编号字段,类型是整型,设置自动增量。
约束
无。
索引
主键字段图书证表编号具有自动创建的聚集索引。
留言表(Message)
概述
留言表用于记录顾客对花卉相关的留言。留言表包含的主要内容有:留言表编号、顾客编号。
表定义
留言表定义如表 013所示。
表 013
名称
类型
可否为空
说明
备注
ID
int
业绩评定子项目编号
ReaderID
nvarchar(20)
业绩评定编号
details
nvarchar
项目内容
主键
留言表编号。
约束
无其他约束。
索引
主键字段留言表编号具有自动创建的聚集索引。
系统设置表(SystemSet)
概述
系统设置表用于系统各详细设置信息。系统设置表包含的主要内容有:用户权限设置、赔偿价格参照、公告、证件相关各信息和备份恢复等。
表定义
系统设置表定义如表 013所示。
表 013
名称
类型
可否为空
说明
备注
ID
int
UserPermissionSet
nvarchar(10)
Overdatepoint
money
lostPrice
money
RenewTime
datetime
BackupSet
datetime
Announce
nvarchar(50)
CardReCost
money
Cardfillprice
money
CardReTime
datetime
ModifyPerson
nvarchar(10)
Modifytime
datetime
主键
系统设置表编号。
约束
无其他约束。
索引
主键字段系统设置表编号具有自动创建的聚集索引。
各表SQL代码示例
管理员用户信息表(UserInfo
create table UserInfo
(
  ID Numeric  identity(1001,1) not null,
  Username nvarchar(10) not null,
  Passwd  char(8) not null,
  Type nvarchar(14) check(Type ='花卉管理员' or Type ='系统管理员') not null,
  constraint pk_UserInfo_id primary key(ID)
)
用户用户信息表(ReaderInfo(普通用户)
create table ReaderInfo
(
  Username nvarchar(10) not null,
  ID int not null,
  Passwd char(8) not null,
  Name nvarchar(10) not null,
  Sex char(2) check(Sex ='' or Sex ='')not null,
  Age int ,
  StuNum Numeric ,
  PlaceStrand nvarchar(50),
  PlaceClass nvarchar(50),
  ValidCard nvarchar(50),
  BookCard nvarchar(10),
  CreateTime datetime not null,
  ExpiredTime datetime not null, 
  constraint pk_ReaderInfo_id primary key (ID)
)
顾客类别表(ReaderType
Create table ReaderType
(
ID  int ,

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。