您的当前位置:首页正文

图书管理系统--创建数据库和表

2024-07-17 来源:钮旅网
/*

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)L_BookType(bt_id) on delete cascade on update cascade;

references 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)L_BookType(bt_id);

references

因篇幅问题不能全部显示,请点此查看更多更全内容