create table test
(
a CHAR(10) primary key,
b CHAR(10)
);
create table 图书分类
(
图书分类号 CHAR(10) primary key,
类名 CHAR(10)
);
create table 书目
( ISBN CHAR(20) primary key,
作者 CHAR(10),
出版单位 CHAR(20),
单价 CHAR(10),
图书分类号 CHAR(10),
书名 CHAR(20),
foreign key(图书分类号) references 图书分类(图书分类号)
);
create table 图书
(
ISBN CHAR(20),
图书编号 CHAR(10)primary key,
是否借出 CHAR(10),
备注 CHAR(20),
foreign key(ISBN) references 书目(ISBN)
);
create table 读者
(
借书证号 CHAR(10) primary key,
姓名 CHAR(10),
单位 CHAR(30),
性别 CHAR(10) check (性别 in('男','女')),
地址 CHAR(10),
联系电话 CHAR(11) ,
身份证编号 CHAR(18)
);
create table 罚款分类
(
罚款分类号 CHAR(10) primary key,
罚款名称 CHAR(10),
罚金 CHAR(10)
);
create table 借阅
(
借阅流水号 CHAR(10) primary key,
借书证号 CHAR(10),
图书编号 CHAR(10),
借书日期 CHAR(10) not null,
归还日期 DATE,
罚款分类号 CHAR(10),
备注 CHAR(20),
foreign key(借书证号) references 读者(借书证号),
foreign key(图书编号) references 图书(图书编号),
foreign key(罚款分类号) references 罚款分类(罚款分类号)
);
create table 预约
(
预约流水号 CHAR(10) primary key,
借书证号 CHAR(10) ,
isbn CHAR(20) ,
预约时间 DATE,
foreign key(借书证号) references 读者(借书证号),
foreign key(ISBN) references 书目(ISBN)
);
insert into 图书分类 (图书分类号, 类名)
values ('100 ', '文学 ');
insert into 图书分类 (图书分类号, 类名)
values ('200 ', '科技 ');
insert into 图书分类 (图书分类号, 类名)
values ('300 ', '哲学 ');
insert into 书目 (作者, 出版单位, 单价, 图书分类号, isbn, 书名)
values ('王珊 ', '高等教育出版社 ', '39.00 ', '200 ', '7040195836 ', '数据库系统概论 ');
insert into 书目 (作者, 出版单位, 单价, 图书分类号, isbn, 书名)
values ('曹雪芹 ', '人民出版社 ', '20.00 ', '100 ', '9787508040110 ', '红楼梦 ');
insert into 书目 (作者, 出版单位, 单价, 图书分类号, isbn, 书名)
values ('曹雪芹 ', '作家出版社 ', '34.30 ', '100 ', '9787506336239 ', '红楼梦 ');
insert into 书目 (作者, 出版单位, 单价, 图书分类号, isbn, 书名)
values ('张立文 ', '人民出版社 ', '33.80 ', '300 ', '9787010073750 ', '心学之路 ');
insert into 图书 (图书编号, isbn, 是否借出, 备注)
values ('2001231 ', '7040195836 ', '否 ', null);
insert into 图书 (图书编号, isbn, 是否借出, 备注)
values ('2001232 ', '7040195836 ', '是 ', null);
insert into 图书 (图书编号, isbn, 是否借出, 备注)
values ('1005050 ', '9787506336239 ', '否 ', null);
insert into 图书 (图书编号, isbn, 是否借出, 备注)
values ('1005063 ', '9787508040110 ', '是 ', null);
insert into 图书 (图书编号, isbn, 是否借出, 备注)
values ('3007071 ', '9787010073750 ', '是 ', null);
insert into 读者 (借书证号, 姓名, 单位, 性别, 地址, 联系电话, 身份证编号)
values ('20051001 ', '王菲 ', '四川绵阳西科大计算机学院 ', '女 ', null, null, null);
insert into 读者 (借书证号, 姓名, 单位, 性别, 地址, 联系电话, 身份证编号)
values ('20062001 ', '张江 ', '四川绵阳中心医院 ', '男 ', null, null, null);
insert into 读者 (借书证号, 姓名, 单位, 性别, 地址, 联系电话, 身份证编号)
values ('20061234 ', '郭敬明 ', '四川江油305 ', '男 ', null, null, null);
insert into 读者 (借书证号, 姓名, 单位, 性别, 地址, 联系电话, 身份证编号)
values ('20071235 ', '李晓明 ', '四川成都工商银行 ', '男 ', null, null, null);
insert into 读者 (借书证号, 姓名, 单位, 性别, 地址, 联系电话, 身份证编号)
values ('20081237 ', '赵鑫 ', '四川广元广元中学 ', '女 ', null, null, null);
insert into 罚款分类 (罚款分类号, 罚款名称, 罚金)
values ('1 ', '延期 ', '10 ');
insert into 罚款分类 (罚款分类号, 罚款名称, 罚金)
values ('2 ', '损坏 ', '20 ');
insert into 罚款分类 (罚款分类号, 罚款名称, 罚金)
values ('3 ', '丢失 ', '50 ');
insert into 借阅 (借阅流水号, 借书证号, 图书编号, 借书日期, 归还日期, 罚款分类号, 备注)
values ('1 ', '20081237 ', '3007071 ', to_date('19-09-2010', 'dd-mm-yyyy'), to_date('20-09-2010', 'dd-mm-yyyy'), null, null);
insert into 借阅 (借阅流水号, 借书证号, 图书编号, 借书日期, 归还日期, 罚款分类号, 备注)
values ('2 ', '20071235 ', '1005063 ', to_date('20-10-2010', 'dd-mm-yyyy'), to_date('20-02-2011', 'dd-mm-yyyy'), '1 ', null);
insert into 借阅 (借阅流水号, 借书证号, 图书编号, 借书日期, 归还日期, 罚款分类号, 备注)
values ('3 ', '20071235 ', '2001232 ', to_date('01-09-2011', 'dd-mm-yyyy'), null, null, null);
insert into 借阅 (借阅流水号, 借书证号, 图书编号, 借书日期, 归还日期, 罚款分类号, 备注)
values ('4 ', '20061234 ', '1005063 ', to_date('20-09-2011', 'dd-mm-yyyy'), null, null, null);
insert into 借阅 (借阅流水号, 借书证号, 图书编号, 借书日期, 归还日期, 罚款分类号, 备注)
values ('5 ', '20051001 ', '3007071 ', to_date('10-09-2011', 'dd-mm-yyyy'), null, null, null);
insert into 借阅 (借阅流水号, 借书证号, 图书编号, 借书日期, 归还日期, 罚款分类号, 备注)
values ('6 ', '20071235 ', '1005050 ', to_date('20-10-2011', 'dd-mm-yyyy'), to_date('20-02-2012', 'dd-mm-yyyy'), '1 ', null);
insert into 预约 (预约流水号, 借书证号, isbn, 预约时间)
values ('1 ', '20081237 ', '9787508040110 ', to_date('11-09-2011', 'dd-mm-yyyy'));
alter table 借阅
modify(借书日期 CHAR(10) not null);
alter table 读者
constraint CN_tel
check (length(联系电话)=11);
alter table 读者
constraint CN_card
check(length(身份证编号)=18,身份证编号 like '[0,9]''[0,9]''[0,9]''[0,9]''[0,9]''[0,9]'
'[0,9]''[0,9]''[0,9]''[0,9]''[0,9]''[0,9]' '[0,9]''[0,9]''[0,9]''[0,9]''[0,9]''[0,9]');
/*alter table 读者
modify (身份证编号 char(18));
*/
alter 图书
add constraint CK_data check(是否借出='是',是否借出='否');