环境:Windows 10 *** 作系统,SQL Server 2019开发平台。
创建数据库:1、按要求创建数据库
数据库名为db_HX;
数据库中包含一个主数据文件,逻辑文件名为HX_DATA,物理文件名为HX_DATA.MDF,文件的初始容量为5MB,最大容量为15MB,文件容量递增值为2MB;
数据库中包含一个辅数据文件,逻辑文件名为HX_DATA1,物理文件名为HX_DATA1.NDF,文件的初始容量为1MB,文件大小不受限制,文件增长量为20%;
事务日志文件的逻辑文件名为HX_LOG,物理文件名为HX_LOG.LDF,初始容量为3MB,最大容量为10MB,文件容量递增值为1MB;
create database db_HX
on
(name=HX_DATA,filename=‘E:\Fore term\HX_DATA.MDF’,size=5MB,maxsize=15MB,filegrowth=2MB),
(name=HX_DATA1,filename=‘E:\Fore term\HX_DATA1.NDF’,size=1MB,maxsize=unlimited,filegrowth=20%)
log on
(name=HX_LOG,filename=‘E:\Fore term\HX_LOG.LDF’,size3MB,maxsize=10MB,filegrowth=1MB)
2、按要求对数据库进行修改
在数据库db_HX中添加一个数据文件,逻辑文件名为HX_DATA2,文件的初始容量为3MB,最大容量为15MB,文件容量递增值为2MB;
将事务日志文件的最大容量改为20MB,文件容量递增值为2MB;
ALTER DATABASE db_HX
ADD FILE
(NAME='HX_DATA',FILENAME='D:\Fore term\HX_DATA2.ndf',SIZE=3MB,MAXSIZE=15MB,FILEGROWTH=1MB)
3、按要求对数据库文件进行删除
将数据库db_HX中刚添加的HX_DATA1数据库文件删除
DBCC SHRINKFILE(HX_DATA2,EMPTYFILE)
ALTER DATABASE db_HX REMOVE FILE HX_DATA2
4.删除数据库db_HX
DROP DATABASE db_HX
8.将数据库db_HX进行分离和附加 *** 作。
SP_DETACH_db[db_HX] --分离
SP_ATTACH_DB db_HX,'D:\Fore term\db_HX.mdf' --附加
9.创建一个包含多个数据文件和日志文件的数据库db_MNS,该数据库包含两个初始大小为15MB的数据文件和两个5MB的日志文件。
创建数据表:数据表1:书籍信息表(tb_BookInfo)
存储内容 | 存储书籍信息情况 | |||
字段名称 | 中文意义 | 数据类型 | 数据长度 | 其它 |
SJBH | 书籍编号 | char | 10 | NOT NULL |
SJMC | 书籍名称 | varchar | 20 | NOT NULL |
LBBH | 类别编号 | char | 2 | |
CBS | 出版社 | varchar | 30 | |
ZZ | 作者 | varchar | 20 | |
DJRQ | 登记日期 | Datetime | ||
SFJC | 是否借出 | bit |
(1)利用T-SQL完成书籍信息表(tb_BookInfo)的创建
CREATE TABLE tb_BookInfo
(
SJBH char(10) NOT NULL,
SJMC char(10) NOT NULL,
LBBH char(2),
CBS varchar(30),
DJRQ Datetime,
SFJC bit
)
(2)利用T-SQL在书籍信息表(tb_BookInfo)中添加以下约束:
1)在书籍编号字段上添加主键约束
2)在类别编号字段上添加外键约束
3)在登记日期字段上添加当前日期
4)在是否借出字段上默认值为0
*写出“应还书日期>借书日期约束语句 constraint ck_tb_LentInfo_YHSRQ check(YHSRQ > JSRQ)
ALTER TABLE tb_BookInfo
ADD CONSTRAINT pk_tb_BookInfo_SJBH PRIMARY KEY(SJBH)
ALTER TABLE tb_BookInfo
ADD CONSTRAINT fk_tb_BookInfo_LBBH FOREIGN KEY(LBBH) REFERENCES tb_BooktYPE(LBBH)
ALTER TABLE tb_BookInfo
ADD CONSTRAINT def_tb_BookInfo_DJRQ DEFAULT('getdate()') FOR DJRQ
ALTER TABLE tb_BookInfo
ADD CONSTRAINT def_tb_BookInfo_SFJC DEFAULT('0') FOR SFJC
数据表2:读者信息表(tb_ReaderInfo)
存储内容 | 存储读者基本信息情况 | |||
字段名称 | 中文意义 | 数据类型 | 数据长度 | 其它 |
DZBH | 编号 | char | 10 | 主键 |
DZMC | 姓名 | varchar | 20 | NOT NULL |
BZSJ | 办证日期 | Datetime | 默认getdate() | |
LXDH | 联系电话 | varchar | 30 | NOT NULL |
数据表3:书籍类别表(tb_BookType)
存储内容 | 存储书籍类别信息 | |||
字段名称 | 中文意义 | 数据类型 | 数据长度 | 其它 |
LBBH | 类别编号 | char | 2 | 主键 |
LBMC | 类别名称 | char | 30 | NOT NULL |
数据表4:借书信息表(tb_LentInfo)
存储内容 | 存储书籍借阅信息情况 | |||
字段名称 | 中文意义 | 数据类型 | 数据长度 | 其它 |
DZBH | 读者编号 | char | 10(外键) | 复合主键 |
SJBH | 书籍编号 | char | 10(外键) | |
JSRQ | 借书日期 | Datetime | NOT NULL | |
YHSRQ | 应还书日期 | Datetime | 约束 应还>借书日 | NOT NULL |
HSRQ | 实还书日期 | Datetime |
CREATE TABLE tb_ReaderInfo --表一
(
DZBH char(10) primary key,
DBZC varchar(20) NOT NULL,
BZSJ datetime default getdate(),
LXDH varchar(30) NOT NULL
)
CREATE TABLE tb_BookType --表二
(
LBBH char(10) primary key,
LBMC char(30) NOT NULL
)
CREATE TABLE tb_LentInfo
(
DZBH char(10) foreign key references tb_ReaderInfo(DZBH),
SJBH char(10) foreign key references tb_BookInfo(SJBH),
JSRQ datetime not null,
YHSRQ datetime,
constraint pk_tb_LentInfo primary key(DZBH,SJBH),
constraint ck_tb_LentInfo_YHSRQ check(YHSRQ>JSRQ)
)
(4)在借书信息表(tb_LentInfo)表中加入一列colBZ(备注), 数据类型varchar,长度100
ALTER TABLE tb_LentInfo
ADD colBZ varchar(10)
(5)删除colBZ(备注)列
ALTER TABLE tb_LentInfo
DROP column colBZ
(6)删除借书信息表(tb_LentInfo)中应还书日期字段上的检查约束
ALTER TABLE tb_LentInfo
DROP ck_tb_LentInfo_YHSRQ
任务拓展(课外)
根据以下提供的数据库、表结构、表中记录等信息完成相应的Transact-SQL语句。
产品销售数据库,数据库名为db_CPXS。数据库db_CPXS包含下列3个表:
产品表:表名为tb_CP,描述产品信息;销售商表:表名为tb_XSS,描述销售商信息;产品销售表:表名为tb_XSCP,描述产品的销售信息。各表的结构分别如表1-表3所示,表中约束自行设计:
表1 产品表(tb_CP)表结构
列名 | 数 据 类 型 | 长度 | 是否允许为空值 | 说 明 |
CPBH | 字符型(char) | 6 | 产品编号 | |
CPMC | 字符型(char) | 30 | 产品名称 | |
JG | 浮点型(float) | 8 | √ | 价格 |
KCL | 整型(int) | 4 | √ | 库存量 |
表2 销售商(tb_XSS)表结构
列名 | 数据类型 | 长度 | 是否允许为空值 | 说 明 |
XSBH | 字符型(char) | 6 | 销售商编号 | |
XSMC | 字符型(char) | 30 | 销售商名称 | |
DQ | 字符型(char) | 10 | √ | 地区 |
FZR | 字符型(char) | 8 | √ | 负责人 |
DH | 字符型(char) | 12 | √ | 电话 |
BZ | 文本(text) | 16 | √ | 备注 |
表3 产品销售(tb_XSCP)表结构
列名 | 数据类型 | 长度 | 是否允许为空值 | 说 明 |
CPBH | 字符型(char) | 6 | 产品编号 | |
XSBH | 字符型(char) | 6 | 销售商编号 | |
XSSJ | Datetime | 8 | 销售时间 | |
SL | 整型(int) | 4 | 数量 | |
JE | 浮点型(float) | 8 | 金额 |
请设计数据表1-表3的约束,并写出创建数据表的T-SQL语句。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)