资源描述
/*
1管理员表(L_Administrator)
字段名 字段说明 数据类型 约束 备注
a_id 管理员编号 int Primary Key Identity(1000,1)
a_name 管理员姓名 nvarchar(20) Not null
a_pwd 管理员密码 varchar(20) Not Null
*/
use Library
go
create table L_Administrator(
a_id int not null primary key Identity(1000,1),
a_name nvarchar(20) not null,
a_pwd varchar(20) not null);
/*
2职务类型表(L_Duty)
字段名 字段说明 数据类型 约束 备注
d_id 职务编号 int Primary Key Identity(1000,1)
d_name 职务名称 nvarchar(20) Not null
d_maxcount 最大借阅数量 tinyint Not Null
*/
use Library
go
create table L_Duty(
d_id int not null primary key Identity(1000,1),
d_name nvarchar(20) not null,
d_maxcount tinyint not null);
/*
3读者表(L_Reader)
字段名 字段说明 数据类型 约束 备注
r_id 读者编号 bigint Primary Key
r_name 读者姓名 nvarchar(20) Not Null
r_pwd 读者密码 varchar(20) Not Null
r_sex 读者性别 bit Not Null
r_typeid 职务类型 int Foreign Key 职务类型表的主键
r_academy 所在院系 nVarchar(20)
r_major 专业 nVarchar(20)
r_contact 联系方式 Varchar(20)
r_email 邮箱 nvarchar(20)
r_photo 读者照片 nVarchar(100) 存的是读者照片的路径
*/
use Library
go
create table L_Reader(
r_id bigint not null primary key,
r_name nvarchar(20) not null,
r_pwd varchar(20) not null,
r_sex bit not null,
r_typeid int not null,
r_academy nvarchar(20),
r_major nvarchar(20),
r_contact varchar(20),
r_email varchar(20),
r_photo nvarchar(100));
alter table L_Reader add constraint fk_dtypeid foreign key(r_typeid) references L_Duty(d_id)
on delete cascade
on update cascade;
/*创建一个存储过程*/
use Library
go
create procedure reader
@r_id bigint,
@r_name nvarchar(20),
@r_pwd varchar(20),
@r_sex bit,
@r_typeid int,
@r_academy nvarchar(20),
@r_major nvarchar(20),
@r_contact varchar(20),
@r_email varchar(20),
@r_photo nvarchar(100)
as
begin
insert into L_Reader(r_id,r_name,r_pwd,r_sex,r_typeid,r_academy,r_major,r_contact,r_email,r_photo)
values(@r_id,@r_name,@r_pwd,@r_sex,@r_typeid,@r_academy,@r_major,@r_contact,@r_email,@r_photo);
end
/*
4图书类型表(L_BookType)
字段名 字段说明 数据类型 约束 备注
bt_id 类型编号 int Primary Key Identity(1000,1)
bt_name 类型名称 nVarchar(20) Not null
*/
use Library
go
create table L_BookType(
bt_id int not null primary key Identity(1000,1),
bt_name nvarchar(20) not null);
/*
5出版社信息表(L_Publishing)
字段名 字段说明 数据类型 约束 备注
ISBN 国际标准图书编码 char(13) Primary Key
p_name 出版社名称 nvarchar(30) Not Null
*/
use Library
go
create table L_Publishing(
ISBN char(13) not null primary key,
p_name nvarchar(30) not null);
/*
6图书信息表(L_Book)
字段名 字段说明 数据类型 约束 备注
b_id 图书编号 Varchar(30) Primary Key Identity(1000,1)
b_name 图书名称 nvarchar(30) Not Null
ISBN 国际标准图书编码 char(13) Foreign Key 13位数字组成
b_bkcaseid 书架编号 Varchar(20)
b_price 定价 Numeric(10,2)
b_author 作者 nvarchar(20)
b_typeid 类型编号 int Foreign Key
b_intime 入库时间 DateTime
b_synopsis 图书简介 Nvarchar(500)
b_state 图书状态 bit 0--借出,1--没有借出
b_photo 封面图片 Nvarchar(100) 存的是路径
*/
use Library
go
create table L_Book(
b_id varchar(20) not null primary key ,
b_name nvarchar(30) not null,
ISBN char(13),
b_bkcaseid varchar(20),
b_price Numeric(10,2) not null,
b_author nvarchar(20),
b_typeid int,
b_intime DateTime,
b_synopsis nvarchar(1000),
b_state bit not null default 0,
b_photo nvarchar(100));
alter table L_Book add constraint fk_btypeid foreign key(b_typeid) references L_BookType(bt_id)
on delete cascade
on update cascade;
alter table L_Book add constraint fk_bisbn foreign key(ISBN) references L_Publishing(ISBN)
on delete cascade
on update cascade;
alter table L_Book drop column b_bkcaseid
/*创建存储过程*/
use Library
go
create procedure book
@b_name nvarchar(30),
@ISBN char(13),
@b_bkcaseid varchar(20),
@b_price numeric(10,2),
@b_author nvarchar(20),
@b_intime datetime,
@b_synopsis nvarchar(1000),
@b_photo nvarchar(100)
as
begin
insert into L_Book(b_name,ISBN,b_bkcaseid,b_price,b_author,b_intime,b_synopsis,b_photo)
values(@b_name,@ISBN,@b_bkcaseid,@b_price,@b_author,@b_intime,@b_synopsis,@b_photo);
end
/*
7借阅管理表(L_Borrow)
字段名 字段说明 数据类型 约束 备注
bw_id 借阅编号 int Primary Key Identity(1,1)
bw_bookid 图书编号 Varchar(20) Foreign Key
bw_readerid 读者编号 Int Foreign Key
bw_outtime 借出日期 DateTime Not Null
bw_endtime 到期日期 DateTime Not Null
bw_backtime 归还日期 DateTime
bw_isexpired 是否过期 Bit Not Null 默认为0--不过期
bw_fine 罚款数目 Numeric (10,2) 过期后才计算罚款数目
*/
use Library
go
create table L_Borrow(
bw_id int not null primary key Identity(1,1),
bw_bookid varchar(20),
bw_readerid bigint ,
bw_outtime datetime not null,
bw_endtime as dateadd(d,30,bw_outtime),
bw_backtime datetime,
bw_isexperied bit default 0,
bw_fine numeric(10,2) default 0.00);
alter table L_Borrow add constraint fk_bookid foreign key(bw_bookid) references L_Book(b_id)
on delete cascade
on update cascade;
alter table L_Borrow add constraint fk_readerid foreign key(bw_readerid) references L_Reader(r_id)
on delete cascade
on update cascade;
/*
8图书资源表(L_Resource)
字段名 字段说明 数据类型 约束 备注
rs_id 资源编号 Int Primary Key Identity(1000,1)
rs_name 资源名称 nVarchar(30) Not null
rs_synopsis 资源简介 nVarchar(500)
rs_amount 资源大小 int 单位为KB或是MB
rs_type 资源类型 Varchar(20) 类似于doc、xsl、ppt、pdf、zip、rar、MP3、wmv等常用格式
*/
use Library
go
create table L_Resource(
rs_id int not null primary key Identity(1000,1),
rs_name nvarchar(30) not null,
rs_synopsis nvarchar(500),
rs_amount bigint,
rs_type varchar(20));
/*
9图书评论表(L_BookMarks)
字段名 字段说明 数据类型 约束 备注
ISBN 国际标准图书编码 char(13) Foreign Key
bm_contents 评论内容 Nvarchar(500) Not Null
bm_time 评论时间 DateTime Not Null
*/
use Library
go
create table L_BookMarks(
ISBN char(13) not null,
bm_contents nvarchar(500) not null,
bm_time datetime not null);
alter table L_BookMarks add constraint fk_bmisbn foreign key(ISBN) references L_Publishing(ISBN)
on delete cascade
on update cascade;
/*
10书架信息表(L_BookCase)
字段名 字段说明 数据类型 约束 备注
bc_id 书架编号 int Primary Key Identity(1000,1)
bc_typeid 类型编号 int Foreign Key
*/
use Library
go
create table L_BookCase(
bc_id int not null primary key Identity(1000,1),
bc_typeid int not null);
alter table L_BookCase add constraint fk_bctypeid foreign key(bc_typeid) references L_BookType(bt_id);
展开阅读全文