实验4实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学号:20164477 姓名:陈家凤
实验四数据库表的创建和管理
一、目的与要求
1.掌握数据库表的两种创建方法;
2.掌握完整性约束的设置方法;
3.掌握导入导出数据的操作方法;
二、实验准备
1.了解完整性约束的概念,分类;
2.了解T-SQL创建、修改和删除表的语法格式;
3.了解数据导入导出。
三、实验内容
(一) 在对象资源管理器中创建数据库表
创建数据库studb,存储属性为默认,在studb数据库中建立数据表。结构如图4-1所示:
图4-1
图4-2
图4-3
图4-4
图4-5
图4-6
需要定义的约束有:
1.主键和外键,依据图中标识建立
在SC表中右击—>关系—>按箭头步骤(两次添加)
图4-7
图4-8
图4-9
2.S表中在s_name上建立唯一键约束。
S表中在s_name上右击—>索引/键—>添加
图4-10
3.C表中设置check约束为ccredit不能为负数
C表中在ccredit中右击—>check约束—>按箭头步骤
图4-11
3.SC表中score默认值为0
SC表中score右击—> check约束—>按箭头步骤
图4-12
(二) 使用T-SQL语句修改表
1.在S表中增加新的列,列名sfzh,数据类型为varchar(18)。alter table dbo.S add sfzh varchar(18)
图4-13
图4-14
2.在C表中增加外键约束,外键是cpno,参考C表的cno列。alter table dbo.C add constraint FK_cpno foreign key(cpno) references dbo.C(cno)
图4-15
3.在SC表中删除默认值约束。
alter table dbo.SC
drop constraint DF_SC_score
图4-16
(三)建立关系图
如图4-1建立studb数据库中的关系图。具体步骤同(一)
图4-17
(四)在表中录入以下数据:
在S表中添加如下记录:
图4-18
C表中添加如下记录:
图4-19
SC表中添加如下记录:
图4-20
(五) 使用T-SQL语句建立表
在studb数据库中建立教师表T,结构如图4-21:
图4-21
use studb
go
create table T (tno char(6) null,
tname varchar(10) null,
tsex char(2) null,
tbirday datetime null,
salary money null,
title varchar(10) null)
go
图4-22 图4-23
(六)建立规则和默认值
1.创建规则对象rule_tsex,设置性别只能为‘男’或‘女’,并绑定到T表的tsex 列上。输入数据进行检验。
create rule rule_tsex
as
@sex='男' or @sex='女'
go
exec sp_bindrule 'rule_tsex','T.tsex'
图4-24
2.创建默认值对象df_salary,值为0,绑定到T表的salary列。create default df_salary as 0
go
execute sp_bindefault 'df_salary','T.salary'
图4-25
3.要删除以上建立和规则和默认值对象,要如何操作?Exec sp_unbindrule'T.tsex'
Drop rule rule_sex
图4-26
Exec sp_unbindrule'T.salary'
Drop DEFAULT df_salary
图4-27
(七)导入导出数据
1.将数据库中的S、C和SC表,导出到“D:\学号文件夹”目录中的Excel文件,文件名自定义。
图4-28
图4-29
图4-30
图4-31
图4-32
图4-33
2.在studb数据库中导入提供的excel文件TC.xls。
图4-35
图4-36
图4-37
图4-38
图4-39
图4-40
图4-41
最后保存studb数据库的物理文件,以备之后的实验之用。
四、思考与练习
1.表中的多列作为主键,要如何设置?
按住ctrl建选取要成为逐渐的键后点击鼠标右键,设定为主键
2.在表中定义的默认值、check约束,与在可编程性中创建的规则、默认值对象有何区别?
默认值是一种数据库对象,在数据库中定义一次后,可以被多次应用于表中的一列或多列,还可用于用户自定义的数据类型