赞
踩
一、创建数据库
1、创建一个名为book的数据库
2、打开book数据库
- 1、create database book
- 2、use book
二、创建数据表
创建数据表分别如下:红色字体为主键,蓝色字体为外键(外键暂时不实现,后面第8题中再创建)
- create table borrow
- (
- id int comment '借阅id',
- borrownumber varchar(14) comment '借书证编号',
- barcode varchar(11) comment '图书条码号',
- borrowtime datetime comment '借出日期',
- returntime datetime comment '归还日期',
- `condition` char(3) comment '状态'
- )comment '借阅';
- alter table borrow add primary key (id);//单独设置主键
- alter table borrow alter column `condition` set default 01;--设置默认值
- create table administrator(
- workid varchar(11) comment '工号',
- name varchar(11) comment '姓名',
- password varchar(20) comment '密码',
- sex char(1) comment '性别',
- title varchar(6) comment '职称',
- duty varchar(6) comment '职务'
- )comment '管理员';
- alter table administrator add primary key (workid);--设置主键
- aalter table administrator MODIFY title varchar(6) null;--允许为空
- alter table administrator MODIFY duty varchar(6) null;--允许为空
- create table readersort(
- readerid char(2)comment '读者类别编号',
- sort varchar(11) comment '类别',
- lendnumber int comment '可借数量',
- lendtime int comment '借期'
- )comment '读者类别';
- alter table readersort add primary key (readerid);--设置主键
- create table books(
- barcode varchar(11) comment '图书条码号',
- ISBN varchar(20),
- scriptoriumnumber char(4) comment '馆藏地编号',
- sortnumber varchar(11) comment '分类号'
- )comment '图书';
- alter table books add primary key (barcode);--设置主键
- alter table books MODIFY ISBN varchar(20) null;--允许为空
- create table bookdetails(
- ISBN varchar(20),
- bookname varchar(20) comment '书名',
- writer varchar(11) comment '作者',
- press varchar(20) comment '出版社',
- presstime datetime comment '出版日期',
- price float comment '价格',
- synopsis varchar(200) comment '简介'
- )comment '图书详情';
- alter table bookdetails add primary key (ISBN);--设置主键
- alter table bookdetails MODIFY press varchar(20) null;--允许为空
- alter table bookdetails MODIFY presstime datetime null;--允许为空
- alter table bookdetails MODIFY price float null;--允许为空
- alter table bookdetails MODIFY synopsis varchar(200) null;--允许为空
- create table reader(
- borrownumber varchar(14) comment '借书证编号',
- identitycardid char(18) comment '身份证编号',
- name varchar(20) comment '姓名',
- sex char(1) comment '性别',
- branch varchar(20) comment '部门',
- address varchar(20) comment '住址',
- phonenumber char(11) comment '电话',
- email varchar(30) comment '电子邮件',
- readerid char(2) comment '读者类别编号'
- )comment '读者';
- alter table reader add primary key (borrownumber);/*设置主键*/
- alter table reader MODIFY address varchar(20) null;/*允许为空*/
- alter table reader MODIFY phonenumber char(11) null;/*允许为空*/
- alter table reader MODIFY email varchar(30) null;/*允许为空*/
- alter table reader add unique identitycardid_index(identitycardid);/*设置唯一索引*/
- alter table reader add unique phonenumber_index(phonenumber);
- alter table reader add unique email_index(email);

- create table scriptorium(
- scriptoriumnumber char(4) comment '馆藏地编号',
- site varchar(10) comment '地点',
- floor char(2) comment '楼层'
- )comment '馆藏地';
- alter table scriptorium add primary key (scriptoriumnumber);/*设置主键*/
- create table librarycard(
- borrownumber varchar(14) comment '借书证编号',
- password varchar(20) comment '密码',
- `condition` char(3) comment '状态'
- )comment '借书证';
- alter table librarycard add primary key (borrownumber);/*设置主键*/
- alter table librarycard MODIFY password varchar(20) null;/*允许为空*/
- alter table librarycard alter column password set default 000000;--设置默认值
- alter table librarycard alter column `condition` set default 01;
三、修改数据结构
4、修改“管理员”表中“姓名”字段的长度为varchar(20)
alter table administrator modify name varchar(20) not null comment '姓名';
5、将“管理员”表中“姓名”字段移到”密码“字段之后
alter table administrator modify name varchar(20) not null comment '姓名' after password;
6、在“管理员”表中添加一列:电话 char(11)
- alter table administrator
- add phonenumber char(11) comment '电话';
7、删除管理员表中”电话“列
alter table administrator drop column phonenumber;
四、建立表之间的联系
8、创建外键,建立各表之间的联系如下(将命令和运行结果截图、将navicat中的E-R图截图):
各表中外键如下:
“图书”表的“馆藏地编号”,关联“馆藏地”表的“馆藏地编号”
- alter table books
- add constraint books_scriptorium_scriptoriumnumber_fk
- foreign key (scriptoriumnumber) references scriptorium (scriptoriumnumber);
“图书”表的“ISBN”,关联“图书详情”表的“ISBN”
- alter table books
- add constraint books_bookdetails_ISBN_fk
- foreign key (ISBN) references bookdetails (ISBN);
“读者”表的“读者类别编号”,关联“读者类别”表的“读者类别编号”
- alter table reader
- add constraint reader_readersort_readerid_fk
- foreign key (readerid) references readersort (readerid);
“借阅”表的“借书证编号”,关联“读者”表的“借书证编号”
- alter table borrow
- add constraint borrow_reader_borrownumber_fk
- foreign key (borrownumber) references reader (borrownumber);
“借阅”表的“图书条码号”,关联“图书”表的“图书条码号”
- alter table borrow
- add constraint borrow_books_barcode_fk
- foreign key (barcode) references books (barcode);
“借书证”表的“借书证编号”,关联“读者”表的“借书证编号”
- alter table librarycard
- add constraint librarycard_reader_borrownumber_fk
- foreign key (borrownumber) references reader (borrownumber);
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。