数据库应用 数据完整性实验答案Word文档格式.docx

上传人:b****6 文档编号:17051218 上传时间:2022-11-28 格式:DOCX 页数:8 大小:396.81KB
下载 相关 举报
数据库应用 数据完整性实验答案Word文档格式.docx_第1页
第1页 / 共8页
数据库应用 数据完整性实验答案Word文档格式.docx_第2页
第2页 / 共8页
数据库应用 数据完整性实验答案Word文档格式.docx_第3页
第3页 / 共8页
数据库应用 数据完整性实验答案Word文档格式.docx_第4页
第4页 / 共8页
数据库应用 数据完整性实验答案Word文档格式.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

数据库应用 数据完整性实验答案Word文档格式.docx

《数据库应用 数据完整性实验答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库应用 数据完整性实验答案Word文档格式.docx(8页珍藏版)》请在冰豆网上搜索。

数据库应用 数据完整性实验答案Word文档格式.docx

1.复制student_info表命名为stu_phone,在stu_phone表中插入一列,列名为'

电话号码'

CHAR(7)。

完成以下代码实现该操作。

stu_phone表结构如图1-10所示。

答:

SELECT*INTO 

stu_phone 

FROM 

student_info 

ALTER 

TABLE 

ADD 

 

电话号码CHAR(7)NULL

创建一个规则phone_rule,限制所输入的数据为7位0~9的数字。

实现该规则的代码为

create 

rule 

phone_rule 

as 

@电话号码 

like 

'

[0-9][0-9][0-9][0-9][0-9][0-9][0-9]'

2.使用系统存储过程sp_bindrule将phone_rule规则绑定到stu_phone表的“电话号码”列上。

实现该操作的代码为

sp_bindrule 

'

stu_phone.电话号码'

3.输入以下代码,进行一次插入操作,要求符合规则:

--select*fromstu_phone

--INSERTINTOstu_phone(学号,姓名,电话号码)VALUES('

0009'

王国强'

1234yyy'

INSERT 

INTO 

stu_phone(学号,姓名,电话号码)VALUES('

4.使用系统存储过程sp_unbindrule解除stu_phone表的'

列phone_rule规则绑定

5.DROPRULE删除规则phone_rule

exesp_unbindrule’stu_phone.性别’

Droprulestu_S_rule

(2)如下图,在管理台建各表的主、外键,同时对成绩表中的学号,课程号建级联更新和级联删除。

请截图

1.为成绩表的创建外键,如下图

2.成绩表的学号、课程号级联更新和级联删除的创建图

图1

图2

图3

以下各题,请参照上图2与图3

课程号外键截图

学号外键截图

学号级联更新、级联删除图

课程号级联更新、级联删除图

(3)、数据其它约束

1.创建一个表Employees5,只含EmployeeID,Name,Sex和Education列。

将Name设为主键,作为列Name的约束。

对EmployeeID列进行unique约束,并作为表的约束

createtableEmployees5

(EmployeeIDchar(6)notnull,

Namechar(10)notnullprimarykey,

Sextinyint,

Educationchar(4),

constraintUK_idunique(EmployeeID)

2.删除上题中的创建unique约束

altertableEmployees5

dropconstraintUK_id

3.创建新表student,只考虑“号码”和“性别”两列,性别只能包含男或女

createtablestudent

(号码char(6)notnull,

性别char

(2)notnull

check(性别in('

男'

女'

))

创建新表Salary2,结构与Salary相同,但Salary2表不允许OutCome列大于InCome列createtableSalary2

InComefloatnotnull,

OutComefloatnotnull,

check(InCome>

=OutCome)

4.

5.创建一个表Salary3,要求所有Salary3表上EmployeeID列的值都要出现在Salary2表中,利用参照完整性约束实现,要求当删除或修改Salary2表上的EmployeeID列时,Salary3表中的EmployeeID值也会随之变化

createtableSalary3

EmployeeIDchar(6)notnullprimarykey,

OutComefloat(8)notnull,

foreignkey(EmployeeID)

referencesSalary(EmployeeID)

onupdatecascade

ondeletecascade

实验名称

数据完整性

实验日期

实验目的

掌握Transact-SQL语句(CREATERULE、DROPRULE)创建和删除规则的方法。

掌握系统存储过程sp_bindrule、sp_unbindrule绑定和解除绑定规则的操作方法,以及sp_helptext查询规则信息、sp_rename更名规则的方法。

掌握Transact-SQL语句(CREATEDEFAULT、DROPDEFAULT)创建和删除默认对象的方法。

掌握系统存储过程sp_bindefault、sp_unbindefault绑定和解除绑定默认对象的操作方法,以及sp_helptext查询默认对象信息。

掌握SQLServer管理平台和Transact-SQL语句(CREATETABLE、ALTERTABLE)定义和删除约束的方法,并了解约束的类型。

实验环境

Windows7,SQLServer2008

实验内容

按实验步骤完成数据完整性设置。

实验中要求在查询设计器中用语句完成的实验,请在这里填写他们的语句,并标上题号。

试验思考

回答以下问题:

(1)在SQLServer2008中,可采用哪些方法实现数据完整性?

(2)比较默认对象和默认约束的异同。

(3)可以使用SQLServer管理平台创建规则和默认值对象吗?

(4)在数据库中建立的规则不绑定到数据表的列上会起作用吗?

为什么?

(5)请说明唯一约束和主键约束之间的联系和区别。

【手写“回答以下问题”,若空白处不够,请附页完成】

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 政史地

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1