数据库-实验一-建立表格

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(是否借出='是',是否借出='否');

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值