数据库实验设计Word格式文档下载.docx
- 文档编号:22473634
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:30
- 大小:1.08MB
数据库实验设计Word格式文档下载.docx
《数据库实验设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数据库实验设计Word格式文档下载.docx(30页珍藏版)》请在冰豆网上搜索。
D:
\SQLserver,mdf'
size=10,
maxsize=50,
filegrowth=5)
logon
name=tese1_log,
F:
\SQLserver.ldf'
size=5mb,
maxsize=25mb,
filegrowth=5mb)
然后点击执行
1.2
(1)在E盘新建SQLserver文件夹并在这个文件夹中新建两个名为test2和test2_1的文件夹
createdatabasetest2
onprimary
name=test2_1,
E:
\SQLserver\test2.mdf'
size=5,
maxsize=20,
filegrowth=5),
name=test2_2,
\SQLserver\test2.ndf'
name=test2_3,
\SQLserver\test2_1.ndf'
name=test2_1_log,
\SQLserver\test2.ldf'
maxsize=20mb,
filegrowth=5mb),
name=test2_2_log,
\SQLserver\test2_1.ldf'
filegrowth=5mb)
1.3
(1)分别在EDF盘新建SQLserver文件夹并在这三个文件夹分别新建两个名为test3和test3_1的文件夹
(2)创建的自定义文件组:
test3Group1和test3Group2。
CREATEDATABASEtest3
ONPRIMARY
(NAME=test3_1,
FILENAME='
\SQLserver\test3.mdf'
SIZE=10,
MAXSIZE=50,
FILEGROWTH=5),
(NAME=test3_2,
\SQLserver\test3_1.ndf'
FILEGROUPtest3Group1
(NAME=test3_1Group1,
\SQLserver\test3.ndf'
(NAME=test3_2Group1,
FILEGROUPtest3Group2
(NAME=test3_1Group2,
(NAME=test3_2Group2,
FILEGROWTH=5)
LOGON
(NAME=Sales_log,
\SQLserver\test3.ldf'
SIZE=5MB,
MAXSIZE=25MB,
FILEGROWTH=5MB)
2
(1)使用add添加
(2)输入如下代码
ALTERDATABASEtese1
ADDFILE
NAME=Tese1_1,
\SQLserver.ndf'
SIZE=5,
MAXSIZE=20,
FILEGROWTH=5
)
3
(1)使用modify实现
alterdatabasetest2
modifyfile
size=10)
4
(1)使用drop实现
dropdatabasetese1
实验二建立表和定义完整性约束
建立模式
表和定义完整性约束
在实验一建立的数据库的基础上,参照下图和下表建立表并定义完整性约束。
图1订货数据库
表1订货数据库字段和约束说明
表名
字段名
字段类型
关键字
约束说明
仓库
仓库号
6个字符
是
前2们为英文大写字母,后4位为数字字符
城市
10个字符
唯一,不允许空值
面积
数值
大于等于50
职工
不是
职工号
参照职工号,说明该的经理是谁,允许空值。
工资
货币
大于等于1000,小于等于10000
供应商
供应商号
4个字符
首位为大写字母S,后3位为数字字符
供应商名
16个字符
地址
30个字符
订购单
参照职工表的职工号,不允许空值
参照供应商表的供应商号,允许空值
订购单号
前2位为英文大写字母OR,后4位为数字字符
订购日期
日期
默认是当前日期
金额
默认空值
订购单明细
参照订购单表的订购单号,不允许空值
序号
2位数字
产品名称
20个字符
单价
大于0,默认空值
数量
整数
大于0,不允许空值
熟练掌握表的建立和数据完整性速描定义方法,实践DBMS提供的数据完整性功能,加深对数据完整性的理解。
在实验一建立数据库的基础上用CREATESCHEMA命令建立模式,用CREATETABLE命令建立表并定义数据完整性约束(注意:
需要有CREATESCHEMA和CREATETABLE的权限,或者其他具有相应权限的身份,有关权限的内容请参见课文5.2节),用ALTERTABLE命令修改表结构。
1、用CREATESCHEMA命令建立模式(自己命名模式名称)。
2、在定义的模式下参照图1和表1使用CREATETABLE命令建立表并定义完整性约束。
3、使用ALTERTABLE命令按如下要求修改表结构:
a)为订购单增加一个新的字段“完成日期”,类型为日期时间型,默认是空值。
b)为订单明细表的“数量”字段重新定义约束:
大于0、小于等于1000的正整数,不允许为空值。
c)将供应商表的供应商名字段的类型修改为varchar(30)。
1.建立模式:
usetest2
go
createschematest2
2建表
(1)仓库表
createtable仓库
仓库号char(6)primarykeycheck(仓库号like'
[A-Z][A-Z][0-9][0-9][0-9][0-9]'
collateChinese_PRC_BIN),
城市char(10)uniquenotnull,
面积numericcheck(面积>
='
50'
(2)职工表
createtable职工
仓库号char(6)foreignkeyreferences仓库(仓库号)check(仓库号like'
职工号char(8)primarykeycheck(职工号like'
[A-Z][A-Z][0-9][0-9][0-9][0-9][0-9][0-9]'
工资moneycheck(工资between1000and10000)null
(3)供应商表
createtable供应商
供应商号char(4)primarykeycheck(供应商号like'
[S][0-9][0-9][0-9]'
collateChinese_PRC_BIN),
供应商名char(16),
地址char(30)
(4)订购单表
createtable订购单
职工号char(8)foreignkeyreferences职工(职工号)notnull,
供应商号char(4)foreignkeyreferences供应商(供应商号)null,
订购单号char(6)primarykeycheck(订购单号like'
[O][R][0-9][0-9][0-9][0-9]'
订购日期datetimedefaultgetdate(),
金额moneydefaultnull
(5)订购单明细表
createtable订购单明细
订购单号char(6)foreignkeyreferences订购单(订购单号),
序号char(6)primarykey,
产品名称char(20),
单价moneycheck(单价>
'
0'
)defaultnull,
数量intcheck(数量>
)notnull
3.修改
(1)为订购单增加一个新的字段“完成日期”,类型为日期时间型,默认是空值
altertable订购单
add完成日期datetimedefaultnull
(2)为订单明细表的“数量”字段重新定义约束:
大于0、小于等于1000的正整数,不允许为空值
altertable订购单明细
addcheck(数量between0and1000)
(3)将供应商表的供应商名字段的类型修改为varchar(30)
usetest2
altertable供应商
altercolumn供应商名varchar(30)
实验三数据操作和完整性约束的作用
数据操作笔完整性约束的作用
在实验二的基础上完成数据的插入操作,然后进行部分修改和删除操作,在这些操作中体会数据完整性约束的作用。
熟练掌握SQL的INSERT,UPDATE和DELETE命令,深刻理解数据完整性约束的作用以及约束时机。
在实验二的基础上首先用INSERT命令插入各个表的记录,然后使用UPDATE和DELETE命令对部分记录进行修改和删除操作。
1、自行设计各个表的记录,其中仓库表至少5条记录,职工表至少10条记录、供应商表至少5条记录,订购单表至少20条记录,订购单明细表至少50条记录。
2、使用INSERT命令完成记录的插入操作,要求分别设计若干违反实体完整性、参照完整性和用户定义完整性约束的插入操作,并分析原因。
3、设计若干删除操作,体会执行删除操作时检查参照完整性规则的效果(要求涉及拒绝删除、空值删除和级联删除等不同的处理方式)。
4、设计若干更新操作,体会执行更新操作时检查实体完整性规则、参照完整性规则和用户定义完整性规则的效果。
5、将x城市仓库的职工的工资提高10%。
6、用UPDATE语句完成订购单表金额字段的计算(提示:
某张订购单的金额为该订购单所有订购项目(订购单明细)单价乘以数量的总和)。
7、设计2~3个删除操作,它需要另外一个表中的数据作为删除条件(例如,按指定的供应商名称删除订购单记录)。
8、在实验报告中给出具体的记录和设计的操作,并针对各种数据完整性检查,给出具体的分析和讨论。
1.输入代码:
insertinto仓库(仓库号,城市,面积)
values('
AA0001'
'
广州'
60'
insertinto仓库
AA0002'
贵州'
AA0003'
深圳'
AA0004'
桂林'
AA0005'
青岛'
insertinto职工(仓库号,职工号,工资)
AA000001'
2000'
insertinto职工
AA000002'
AA000003'
AA000004'
AA000005'
AA000006'
AA000007'
AA000008'
AA000009'
AA000010'
insertinto供应商(供应商号,供应商名,地址)
S001'
广药'
龙洞'
insertinto供应商
S002'
S003'
S004'
S005'
insertinto订购单(职工号,供应商号,订购单号,订购日期,金额,完成日期)
OR0001'
2013-12-25'
20000'
OR0002'
OR0003'
OR0004'
OR0005'
OR0006'
OR0007'
OR0008'
OR0009'
OR0010'
OR0011'
OR0012'
OR0013'
OR0016'
OR0014'
OR0015'
OR0017'
OR0018'
OR0019'
OR0020'
insertinto订购单明细(订购单号,序号,产品名称,单价,数量)
000001'
脑白金'
100'
200'
000002'
000003'
000004'
000005'
000006'
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实验设计