SQL Server数据库应用基础教程 黄维通 第五章.pptVIP

SQL Server数据库应用基础教程 黄维通 第五章.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQL Server--chap6 实现SQL Server的数据完整性 第五章 SQL Server的 数据完整性 主要内容 数据完整性基本概念 定义约束 约束类型的应用 创建约束的其他选项 使用默认与规则 DEFAULT约束 当向数据库表中插入数据时,如果没有明确的提供输入值,SQL Server自动为该列输入指定值 CHECK约束 通过逻辑表达式判断限制插入到列中的值。通常记录中的每一列均有值,即使它是NULL PRIMARY约束 强制表的实体性。不允许数据库表在指定列上具有相同的值,且不允许有空值。 UNIQUE约束 不允许数据库表在指定列上具有相同的值,但允许有空值 FOREIGN KEY约束 外健用于建立和加强两个表数据之间的链接的一列或多列 例:恢复表teachers上的DF_status约束,并在列Title上添加一个输入“未知”值的DEFAULT约束 USE My_DB1 ALTER TABLE teachers ADD CONSTRAINT DF_status DEFAULT ‘在职’ FOR status, CONSTRAINT DF_Title DEFAULT ‘未知’ FOR title go (2) CHECK约束 使用该约束可实现当用户在向表中插入或更新数据时,由SQL Server检查新行中的带有该约束的列值使其必须满足约束条件 该约束在执行INSERT语句或UPDATE时起作用 CHECK(zipcode LIKE[0-9][0-9][0-9][0-9][0-9][0-9]), CHECK约束作用域 单列:列级CHECK约束 多列:表级CHECK约束 例:在表teachers的列Birthday上添加一个CHECK约束,以保证输入的数据大于1900年1月1日并且小于当天的实际日期 列级约束 USE My_DB1 ALTER TABLE teachers ADD CONSTRAINT CK_Birthday CHECK(Birthday’01/01/1900’ AND Birthdaygetdate()) go 约束名 继续插入一个不符合约束的记录? INSERT Departments values(20,清华大学计算中心) go 向表中插入如下数据,试试看 INSERT teachers values(41356,‘黄轩’, ‘男’, ‘5/1/1851’,20,‘教授’, ‘规划部’,‘在职’) go (3) PRIMARY KEY约束 该约束能确保数据的唯一性 若PRIMARY KEY约束定义在多列上,则一列中的值可以重复,但PRIMARY KEY约束定义中的所有列的组合的值必须唯一 31 English Prof_4 100003 28 English Prof_3 100001 35 Nature Prof_2 100002 25 Computer Prof_1 100001 price book title_id author_id 主键 例:在My_DB1中建表Subjects以记录学校学科数据。表中包括 一级学科代码(加主键约束) 一级学科名称 二级学科代码(加主键约束) 二级学科名称 USE My_DB1 CREATE TABLE My_DB1. dbo.Subjects ( PrimaryCode tinyint NOT NULL, PrimaryName nvarchar(20) NULL, SecondaryCode tinyint NOT NULL, SecondaryName nvarchar(20) NULL ) GO ALTER TABLE Subjects ADD CONSTRAINT PK_Subject PRIMARY KEY CLUSTERED (PrimaryCode, SecondaryCode) GO (4) UNIQUE约束 该约束可确保在非主键列中不输入重复值,可以实现在一张表上定义多个UNIQUE约束,且在定义有UNIQUE约束的列上允许有一个空值 可以对一个表定义多个 UNIQUE 约束,但只能定义一个 PRIMARY KEY 约束 UNIQUE 约束允许 NULL 值,这一点与 PRIMARY KEY 约束不同,当与参与 UNIQUE 约束的任何值一起使用时,每列只允许一个空值 FOREIGN KEY 约束可以引用 UNIQUE 约束 例:在表Departments上的TelCode列上添加一个UNIQUE约束 USE My_DB1 ALTER TAB

文档评论(0)

1243595614 + 关注
实名认证
文档贡献者

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档