8实验八数据库的完整性Word格式文档下载.docx

上传人:b****4 文档编号:18168716 上传时间:2022-12-13 格式:DOCX 页数:15 大小:103.32KB
下载 相关 举报
8实验八数据库的完整性Word格式文档下载.docx_第1页
第1页 / 共15页
8实验八数据库的完整性Word格式文档下载.docx_第2页
第2页 / 共15页
8实验八数据库的完整性Word格式文档下载.docx_第3页
第3页 / 共15页
8实验八数据库的完整性Word格式文档下载.docx_第4页
第4页 / 共15页
8实验八数据库的完整性Word格式文档下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

8实验八数据库的完整性Word格式文档下载.docx

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

8实验八数据库的完整性Word格式文档下载.docx

j

duar(&

他称〉

恆度

毬认值或绑定频据类型冗诈Null值

曰夷设计署

Fl.ovvCL.id

c.为Student表的Snam字段添加唯一性约束。

选择Snam一行,右击索引/键

3_crth

■a?

_j.

出现如下界面:

矣引厢

曾tea

PK_StudentCAlFE^eiOE匚疋

正在犒咼Jt苟的届性*

nr

1*

兰迴

?

Snc(ASC)

1标识

P<

_S:

uderrt_CAlFE4640SC6C43E

1希富讨誥

fc言田书;

ja

鈿略車疙爭

15^^1钢塔

PftlVIARY

1:

T-

bd

Fl

美駁口

E

B

因眩tc;

单击“添加”,在类型中选择“唯一键”,在列中选择“Sname,名称自定义

远走的主/唯一過或枣引⑸;

lX_?

tudient*

PKStudentCA1FE4S40BC6口

正在咗一愛或索引的楚性,

星唯一的

S岡

索引

Sno(ASC)否

IS

昱蚯一t标识

(名钿

说明

包含的列钊奩为熹集比

埴衣拒菠

Sname(A£

C)

I)^_Sludent

PRIMARY

最后单击“关闭”退出

 

d.将SC表的Sno,cno字段设置外键约束,约束名自已取,并允许级联删除与级联更新。

(此要

求在SQLServer2008R2中无法做出)若已存在外键约束,请先删除。

①、选中Sno,右击7单击“关系”,出现如下信息,可见已存在外键约束

r'

«

f:

Hir!

ITaX

enl^info

3

球予IdboCourdbaSCdbo.StudcdboSmdE

■*rvkeBrckf

BeXtt

rpidnfQ.cthsrrt3闻3ink

ZQVFC-Studentjnffl羊匕收Sq

列电ijiJSita

<

3JfinlaltaiT

■I'

两iEnd

1

|~ffl(4Xia(vjl

FSA列(Ml

y歴辟刊N)

奈引网山主立察引促-.畑L倾X)”.

I—

0y|二+亠

□[Sttl

戦iJU百MP亡

F<

5C(TLid^nr

BflttSl

生數句或?

E在色逮睚辛吕用37卷至现育?

Bftfii

说(1^

F吉ifi计遥

E1忡*FT札卩UPDA圧规運翠葩畀崔旳廉杲

鼻制ffl于E対呈

FK_SC_^jrient

选中键,点击删除,完成约束删除

②、添加约束:

选中Sno,右击,选择"

关系”,出现如下信息,

③、点击添加,并修改

1曰儁规)

标旧

笑称)

INSERT和UPDATE规范

更新规则砂在河按作

般腳颂耳忻旬操作

彊制夕束皇

强制用于冥制星④、修改成自己想要的规范和名称

矢垂笆(N);

FK.SC^Student

SC

主舷(P);

Student

Sno

£

no

...J

⑤、

⑥、

确定,完成

设置Cno的外键同上理

使用Transact-SQL语句实施约束

a.为Student表的Sno字段添加一个check约束,使学号满足如下条件:

学号前四位为2011,学号后四位为数字字符。

altertableStudent

'

[2][0][1][1][0-9][0-9][0-9][0-9]'

.'

SQLQuely去昌ql-ZQ_.(zqy-PC\zqy(占S}尸|

HaltertableScudent

addconatrarnc3no_num

-check(STIC?

like'

[2][(:

J[LJ[二J[0-9J[0-9J[C-9][0-9]■)

Jfr

鬲消息_

命令已成功完成;

b.为Student表中的Birth字段添加一个约束,规定生日应小于入学时间。

check(Entrance_date>

Birth)

SQLQueryZ.sql-2Q4zqy-卩匚"

耳¥

□alter匸filcleStudeircaddconscrairitbi;

rtli_dat色

-checkii^Entrsncedate^^irth.}

c.禁用⑻中实施的Check约束

NOCHECKCONSTRAINTsnonum

/SQLQue(y2小ql-zq^tiqyPC\zqy卩5)尸[

曰altercableSfjdenc

LtJOCHECKCONSTRALHTsnonum

曲消息

命令已成功完成。

d.重新启用Check约束

..tQLQueiy2.£

ql-2Q_(zqy-PC\zqy(55))^日altertableSt卫dent

CHECKCONSTRAIirrjnonum

畐消息

命令已成功完威。

e.删除(a)所设置check约束altertableStudent

dropCONSTRAINTsno_num

QLQueiy2.S£

|l-(蛊|y-PC\^y(55)

□altertableStudeii二

-dropCONSTRAINTszio

已消息

命令已成功完成4

f.将Student表中的classno字段设置为允许空。

altercolumnclassnochar(3)null

SQLQuery2.&

ql-ZQ»

(£

qy-PC\zqy(55))*

□alter匸ableStudene

Lalt皀工colnttnclassncchar(3jnull

比消息I

命令已成功完咸©

g.为SC表中的Sno,Cno添加外键约束,约束名自取;

并允许级联删除与级联更新。

若已存在外键约束,请先删除。

①、首先查看SC表中Sno和Cnc有无外键约束

sp_helpconstraint

&

QLqueryZtql-ZQ...{zqy-PC\iqyfSS))*|

3p_helpcon3traint5C

corstraintjypeconstraint_narne

rCHKk"

on'

c5umnGrade'

TCK_SC_Grade_173a7eEA'

->

1"

S■

(Foreignk甲FK_5c_audertt

PRIMARYKEY(clustered)PK_SC_EHXW25315502E7fl

delete_ad:

i(xi

H)date_action

3tatLg_enabfed

(n/a)

Enabled

NoActior

hoActjon

軻/司

sti

Is

②、

由上图已知,SC中Sno存在外键约束,则删除

alter

tableSC

drop

constraint

FKSCStudent

SQLquery2.sql-ZQ„(zqy-PC\zqy(S5))*altertableS匚

dropconstraintFSSCStudent

Lj消息

命令已成功完成0

“^LQuery6.sql-2Q.„(zqy-PC\zqyuecy2.sql-ZQ...(zi

日altertalole5CI

addconstraintFK_SC_StudentforeignkeyfSnon〔referencesStudent

gjpd味UHS匚味du

Londeletecascade

irr

a消息

命令已成功兗威口

altertableSC

addconstraint

FK_SC_Courseforeignkey(Cno)

references

onupdate

ondelete

Course(Cno)cascade

cascade

^QLQueryCHSql-ZQ^^CKiy-PCXiqy(52))*jSQLQu呂ry2・5qi-EQ“.(zqy-

□altertablt3C

addconstraint-TKSCCoursefcreLgizIceyiCncTtreferencesgourge(Gtiq)"

oniipiareciscfljde

-cn.deletecascide

rir

消息,命令已成功完成。

h.为Course表中的Cnam字段添加唯一性约束。

altertableCourse

AK_Cnameunique(Cname)

IzSQLQueryfi.sql-ZQ..CEqy-RC\^y(52))*]^i9LQT・

BalteiCcniiae

LaddconsTiiinxAKCrimeuniq:

u.ei.CaMiej

Trr

12a消息

命令已成功寿m

2、默认值的实施

:

200093。

(1)通过SQLServerManagementStudio实现

a.为数据库Student_info创建一个默认的邮政编码,名称自取,值为

Scfcpt

卜\PostcodeI■■JI■■■LHIIILHJill■llliBBI

列菌兰

(±

==A

(*.=.<

曰(常规)

称)

Postcode

6

裁认值或湃宝

數据奠型

Char

必丹Hn,111洁

■W:

I殆皿Uf士

b.将该默认值绑定到Student表中的Postcode列。

用企业管理器无法做出

C•将Postcode列上的绑定解除,并删除该默认值。

用企业管理器无法做出

⑵用Transact-SQL语句重做

(1)中的(a)、(b)、(c)。

(a)、

createdefaultpostcodeas'

200093'

『"

SQLQuery&

.sql-ZQ._(zqy-PC\zqy(S2))

H匚reatedefeulvpostcode

Las'

200093*

-I-:

由消息

命令已成功完成峥

.sql-ZQ.-fzqy-PC\^yfSi))*j_SQLQuery^.sq!

-Z<

3Pbindefsuit.postcode'

广'

Student.Postcode・

已将默认值绑定到列。

5QLQuery5.£

(|l-zq_(zqy-PC\zqyC52))*[SQLQuesponbindefault*Student”Postcode'

rrr

曲消息

已解療了表列与晦认値之面的綁直

dropdefaultpostcode

qLquery6.tql-2q.*.(iqy-PC\^y(52))*

dropdefaultpcsccode

3、规则的实施

a.为数据库Student_info创建一个关于性别的取值规则,规则名自取,要求字段的取值仅能

为'

男'

或'

女'

b.将该规则绑定到Student表的Sex字段上。

c.解除Student表的Sex列上的绑定,并删除该规则。

中的(a)、(b)、(c)。

⑵使用Transact-SQL重做

(1)

table

Student

with

nocheck

add

sex_check

check(sexin

('

'

))

QLQuery$.sql-ZQ_(2qy-PC\zqy(521)产|

□alL&

rtattle3匸dd色n二

wic-h

-dddc口算sti'

a.inGseiichecjcci;

eckfsexin『男'

f'

in

自消息

createruleSexrule

as@sex='

or@sex='

E^QLQuery^.sql-2<

J_(2qy-f>

C\zqy(52))*日createruleSeK_ruXe|-as@3tx='

cr建sex二■女'

rii

消息

命令已箴功完成。

(b)、sp_bindrule

Sex_rule'

'

Student.Sex'

sQLQu&

ryHsG-ZQ—Ggy-PWqy但2”*]

apfcindiule'

SeMriilt'

「'

Studsuc.S5h・

*I—

由消息I

已将规则绑走到表的列。

3、sp_unbindrule

光LQjery載钧i-2<

J_(zqy-PC\zqy(S2))*

3p_unt)inciriile'

Student.Sex・

Student.Sex'

已解臨了表列与规则之间的绑定。

/SQLQuery^.sql-2Q...(z<

|y-PC^^

droprulesexrule

Es消息

命令已咸功完成4

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

当前位置:首页 > 求职职场 > 简历

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

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