数据库之数据库和表的创建
数据库和表的创建
本文使用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), --读者QQrdBorrowQty 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 文件。单击“确定”按钮。
数据库之数据库和表的创建相关推荐
- SQL2K数据库开发十一之表操作创建UNIQUE约束
1.在数据库关系图中右击表Products,然后从弹出的菜单中选择"属性"命令.或者点击工具栏上的属性图标. 2.或者展开sample数据库,在表Products上 ...
- Oracle数据库用户角色、表空间创建、删除命令
Oracle数据库用户角色.表空间创建.删除命令 //创建数据表空间 create tablespace BCC datafile 'D:\oracle\oradata\BCC\BCC.dbf' si ...
- SQL2K数据库开发六之表操作创建产品表products
1.在SQL Server企业管理器中的数据库下的"表"节点上右击鼠标,在弹出的菜单上点击"新建表". 2.在出现的表设计器中,为表中加入五个列:Product ...
- 第一课:数据库的基本操作(表的创建、删除、修改、重命名、主键、截断表)
一.表的创建 在Mysql中,通过使用create table 来创建表. 1.create table 的基本语法结构 create table 表名 ( 字段名1 数据类型 字段约束 字 ...
- mysql创建复杂表_数据库_MySQL_复杂的表结构创建
本例示例下复杂的表结构创建, 大致分为两张表 user表 和 authority(权限表) 每个用户对应一种权限,默认为1(普通用户) 灵感来源:(仿照 进程的优先级, 优先级越高的进程,数字越小) ...
- SQL2K数据库开发八之表操作创建主键
1.使用Transact-SQL语句在表中创建主键时,可以在创建表的语句中定义列时使用如下语法: 2.在查询分析器中输入如下的语句,可以创建一个表Suppliers,该表中的SupplierID列被定 ...
- SQL2K数据库开发七之表操作添加删除和修改列
1.在已有的表中添加.删除和修改列可以使用Transact-SQL中的ALTER TABLE语句,使用ALTER TABLE语句的语法为: 2.在SQL Server查询分析器中输入如下语句,往Pro ...
- SQL基础学习总结:2(表的创建、删除、更新和名称修改)
表的创建.删除.更新和名称修改 登录MySQL(mysql -u root -p语句) 步骤: 1.首先得先使用mysql -u root -p语句登录数据库: 2.在"Enter pass ...
- mysql创建销售表_MySQL创建数据表(CREATE TABLE语句)
在创建数据库之后,接下来就要在数据库中创建数据表.所谓创建数据表,指的是在已经创建的数据库中建立新表. 创建数据表的过程是规定数据列的属性的过程,同时也是实施数据完整性(包括实体完整性.引用完整性和域 ...
- python数据库建表_mysql数据表如何创建
在 MySQL 中,可以使用 CREATE TABLE 语句创建表.其语法格式为:CREATE TABLE <表名> ([表定义选项])[表选项][分区选项]; 其中,[表定义选项]的格式 ...
最新文章
- php pdo 时间,php – 使用PDO执行时间记录查询 – 自动完成功能无效
- 生产者,消费者,CDN
- JAVa面向对象--反射
- spring怎么设置定时任务为每天凌晨2点执行和每小时执行一次?(亲测)
- 0.typescript-相关文档
- HashMap的工作原理及其相关的知识点
- python dataframe行数_python – 如何在DataFrame中增加groupby中的行数
- java阅卷系统_基于jsp的考试阅卷系统-JavaEE实现考试阅卷系统 - java项目源码
- 2020 IJCAI 接受论文 list 分类排列(三)
- 紧贴潮流,初心未改:OpenInfra Days China升级回归,打造专属OpenStackers的开源大趴
- 乾颐堂安德华为数通HCNA真题解析版(第2部分)
- tensorflow与pytorch 一起安装
- 使用面向对象思想,输出员工信息并计算员工的工资。定义一个部门(Department)类,该类有部门编号(Id)、部门名称(Name)属性;再定义一个员工(Employee)类,该类的属性有员工编号
- 传染病模型(1)——SI模型及matlab详解
- Python之基础详解(八):必备,以制作交易收盘价走趋图为例,来可视化处理json格式的文件
- 基于魔兽RPG对当前游戏发展趋势的分析,以及尝试一个高游戏性玩法的设计
- 闲话Google拼音输入法及其它(一)
- java controller注解原理_SpringMVC运行流程与原理【Controller接口实现注解实现】
- Android Adb命令(4) - ps 查看进程信息
- multiset upper_bound() 与 lower_bound()