当前位置:文档之家› 图书管理系统--创建数据库和表

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

1管理员表(L_Administrator)字段名字段说明数据类型约束备注a_id 管理员编号int Primary Key Identity(1000,1)a_name 管理员姓名nvarchar(20) Not nulla_pwd 管理员密码varchar(20) Not Null*/use Librarygocreate 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 nulld_maxcount 最大借阅数量tinyint Not Null*/use Librarygocreate 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 Keyr_name 读者姓名nvarchar(20) Not Nullr_pwd 读者密码varchar(20) Not Nullr_sex 读者性别bit Not Nullr_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 Librarycreate 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 cascadeon update cascade;/*创建一个存储过程*/use Librarygocreate 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)asbegininsert 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 Librarygocreate 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 Keyp_name 出版社名称nvarchar(30) Not Null*/use Librarygocreate 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 NullISBN 国际标准图书编码char(13) Foreign Key 13位数字组成b_bkcaseid 书架编号Varchar(20)b_price 定价Numeric(10,2)b_author 作者nvarchar(20)b_typeid 类型编号int Foreign Keyb_intime 入库时间DateTimeb_synopsis 图书简介Nvarchar(500)b_state 图书状态bit 0--借出,1--没有借出b_photo 封面图片Nvarchar(100) 存的是路径*/use Librarygocreate 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 cascadeon update cascade;alter table L_Book add constraint fk_bisbn foreign key(ISBN) references L_Publishing(ISBN)on delete cascadeon update cascade;alter table L_Book drop column b_bkcaseid/*创建存储过程*/use Librarygocreate 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)asbegininsert 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 Keybw_readerid 读者编号Int Foreign Keybw_outtime 借出日期DateTime N ot Nullbw_endtime 到期日期DateTime N ot Nullbw_backtime 归还日期DateTimebw_isexpired 是否过期Bit Not Null 默认为0--不过期bw_fine 罚款数目Numeric (10,2) 过期后才计算罚款数目*/use Librarygocreate 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 cascadeon update cascade;alter table L_Borrow add constraint fk_readerid foreign key(bw_readerid) references L_Reader(r_id) on delete cascadeon update cascade;/*8图书资源表(L_Resource)字段名字段说明数据类型约束备注rs_id 资源编号Int Primary Key Identity(1000,1)rs_name 资源名称nVarchar(30) Not nullrs_synopsis 资源简介nVarchar(500)rs_amount 资源大小int 单位为KB或是MBrs_type 资源类型Varchar(20) 类似于doc、xsl、ppt、pdf、zip、rar、MP3、wmv 等常用格式*/use Librarygocreate 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 Keybm_contents 评论内容Nvarchar(500) Not Nullbm_time 评论时间DateTime N ot Null*/use Librarygocreate 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 cascadeon update cascade;/*10书架信息表(L_BookCase)字段名字段说明数据类型约束备注bc_id 书架编号int Primary Key Identity(1000,1)bc_typeid 类型编号int Foreign Key*/use Librarygocreate 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);。

相关主题