数据库之数据库和表的创建

数据库和表的创建

本文使用SQLserver数据库为示范

1 目的

1、掌握利用 SSMS 及 SQL 命令两种方式管理数据库;
2、掌握利用 SSMS 及 SQL 命令两种方式管理表;
3、理解数据文件、事务日志文件、文件组的概念;
4、理解实体完整性、参照完整性和用户自定义完整性;
5、掌握 PRIMARY KEY 约束,FOREIGN KEY 约束,UNIQUE 约束CHECK 约束和 DEFAULT约束的使用。

2 要点

1、创建数据库、修改数据库、删除数据库、数据库的分离与附加;
2、创建表、修改表、删除表、五种数据约束;

3 主要内容

得到的简易图书管理数据库(假定数据库名为:BooksDB)包含 4 个关系(即:数据表)。
关系名、属性及说明分别如下述各表所示。
(1)读者类别表 ReaderType
读者类别表
(2)读者信息表 Reader
读者信息表
(3)图书信息表 Book

图书信息表
(4)借阅信息表 Borrow
借阅信息表
要求完成如下任务:
1、利用 SQL 命令创建 BooksDB 数据库及表;
2、分离与附加 BooksDB;
3、数据导入/导出:将 BooksDB 数据库导出到 Access 数据库。

4 详细步骤和SQL命令

4.1 使用 SQL 命令管理数据库和表

1、创建并使用数据库 BooksDB

create database BookDB  --创建数据库
go
use BooksDB  --使用数据库
go

2、创建读者类别表 ReaderType

create table ReaderType(
    rdType Int primary key,  --读者类别号
    rdTypeName varchar(20),  --读者类别名称
    canLendQty int,          --可借书天数
    canLendDay int           --可借书天数
)

运行后得到表格如下:
创建的读者类别表
3、创建读者表 Reader

create table Reader(
    rdID char(9) primary key,  --读者编号
    rdType int references ReaderType(rdType),--读者类别
    rdName varchar(20),  --读者姓名
    rdDept varchar(40),  --读者单位
    rdQQ varchar(13),  --读者QQ
    rdBorrowQty int default 0 check(rdBorrowQty between 0 and 10)  --已借书天数
)

运行后得到表格如下:
创建的读者信息表
4、创建图书表 Book

create table Book(
    bkID char(9) primary key,  --书号
    bkName varchar(50),  --书名
    bkAuthor varchar(50),  --作者
	bkPress varchar(50),  --出版社
	bkPrice decimal(5,2),  --单价
	bkStatus int default 1  --是否在馆,1:在馆,0:不在馆   
)

运行后得到表格如下:
创建的图书信息表
5、创建借阅信息表 Borrow

create table Borrow(
    rdID char(9) references Reader(rdID),  --读者编号
	bkID char(9) references Book(bkID),  --书号
	DateBorrow datetime, --借书日期
	DateLendPlan datetime,  --应还日期
	DateLendAct datetime,  --实际还书日期
	primary key(rdID,bkID)
)

运行后得到表格如下:
创建的借阅信息表

4.2 向数据表中录入测试数据

向表中录入数据时,必须严格按照创建表时给的数据类型录入。
1、向ReaderType表中插入数据

insert into ReaderType values('1','教师','10','60')
insert into ReaderType values('2','本科生','5','30')
insert into ReaderType values('3','硕士研究生','6','40')
insert into ReaderType values('4','博士研究生','8','50')

运行后得到表格如下:
读者类别
2、向Reader表中插入数据

insert into Reader values('rd2017001','1','刘宇','计算机科学学院','2546831','1')
insert into Reader values('rd2017002','2','邱琳','管理学院','1542368','1')
insert into Reader values('rd2017003','3','罗美娟','外语学院','54265825','1')
insert into Reader values('rd2017004','4','王强','电信学院','2543698','1')

运行后得到表格如下:
读者信息
3、向Book表中插入数据

insert into Book values('bk2017001','数据库原理及应用','王丽艳','机械工业出版社','33.00','1')
insert into Book values('bk2017002','高等数学','同济大学数学系','高等教育出版社','32.00','1')
insert into Book values('bk2017003','当代教育心理学','陈琦','北京师范大学出版社','37.20','1')
insert into Book values('bk2017004','古代汉语','王力','中华书局','20.40','1')

运行后得到表格如下:
图书信息
4、向Borrow表中插入数据

insert into Borrow values('rd2017001','bk2017002','2017.6.1','2017.8.1','2017.6.10')
insert into Borrow values('rd2017002','bk2017001','2017.5.2','2017.6.2','2017.5.20')
insert into Borrow values('rd2017003','bk2017003','2017.3.15','2017.4.24','2017.4.10')
insert into Borrow values('rd2017004','bk2017001','2017.2.8','2017.3.28','2017.2.28')

运行后得到表格如下:
借阅信息

4.3 分离与附加数据库

1、分离数据库
(1)在对象资源管理器中,选中数据库 BooksDB,选择右键菜单“任务”->“分离”。如下图所示。
分离数据库第一步
(2)在弹出的“分离数据库”对象框中,单击“确定”按钮。
分离数据库第二步
2、附加数据库
数据库分离成功后,利用数据文件 BookDB.mdf 及事务日志文BookDB_log.ldf 附加数据库BooksDB。
(1)在对象资源管理器中,选中“数据库”,选择右键菜单“附加(A)…”。如下图所示。
附加数据库第一步
(2)在弹出的“附加数据库”对象框中,单击“添加(A)…”按钮,添加数据库的 MDF 文件。单击“确定”按钮。
附加数据库第二步

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章