- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
?列级约束与表级约束在SQL Server中有5种约束:主键约束(primary key constraint)唯一性约束(unique constraint)检查约束(check constraint)缺省约束(default constraint)外部键约束(foreign key constraint)在SQL SERVER中,(1)??????对于基本表的约束分为列约束和表约束约束是限制用户输入到表中的数据的值的范围,一般分为列级约束与表级约束。???????? 列级约束有六种:主键Primary key、外键foreign key 、唯一 unique、检查checck、默认default 、非空/空值 not null/ null???????? 表级约束有四种:主键、外键、唯一、检查列约束是对某一个特定列的约束,包含在列定义中,直接跟在该列的其他定义之后,用空格分隔,不必指定列名;表约束与列定义相互独立,不包括在列定义中,通常用于对多个列一起进行约束,与列定义用’,’分隔,定义表约束时必须指出要约束的那些列的名称。完整性约束的基本语法格式为:??????????????[ CONSTRAINT 约束名 ] 约束类型约束名:约束不指定名称时,系统会给定一个名称。(2)列级约束与表级约束的区别如果完整性约束涉及到该表的多个属性列,必须定义在表级上,否则既可以定义在列级也可以定义在表级。简而言之:列级约束:列级约束是行定义的一部分,只能应用于一列上。表级约束:表级约束是独立于列的定义,可以应用在一个表中的多列上。(3)列级约束与表级约束在SQL中的用法(即如何在SQL中定义约束)在创建表时定义约束:?????????? CREATE TABLE table_name?????????????????? ({column_definition -------列级约束定义????????????????|column_name AS computed_column_expression -------计算列定义????????????????|teble_constraint ------表级约束定义?????????????????? }[,….n]?????????????????? )一个约束定义为列级约束还是表级约束???根据实际需要和设计者思路确定。如primary key,当只涉及到一列时,定义为列级约束;当涉及到多列时,则定义为表级约束。Prinmary key定义为列级约束时,相应SQL语句:Stu_id上建立的主键pk_1为列级约束CREATE TABLE student(Stu_idint constraint pk_1 primary key,???Stu_namevarchar(8),….)当定义为表级约束时,相应SQL语句:CREATE TABLE student(Stu_idint NOT NULL,Stu_id上建立的主键pk_1为的表级约束Stu_namevarchar(8),Constraint pk_1 primary key (Stu_id),?….)各约束具体说明:1. 主键约束PRIMARY KEY约束PRIMARY KEY约束用于定义基本表的主键,起唯一标识作用,其值不能为NULL,也不能重复,以此来保证实体的完整性。PRIMARY KEY与UNIQUE约束类似,通过建立唯一索引来保证基本表在主键列取值的唯一性,但它们之间存在着很大的区别:①在一个基本表中只能定义一个PRIMARY KEY约束,但可定义多个UNIQUE约束;②对于指定为PRIMARY KEY的一个列或多个列的组合,其中任何一个列都不能出现空值,而对于UNIQUE所约束的唯一键,则允许为空。注意:不能为同一个列或一组列既定义UNIQUE约束,又定义PRIMARY KEY约束。PRIMARY KEY既可用于列约束,也可用于表约束。PRIMARY KEY用于定义列约束时,其语法格式如下:??????????????CONSTRAINT 约束名 PRIMARY KEYPRIMARY KEY用于定义表约束时,即将某些列的组合定义为主键,其语法格式如下:???? [CONSTRAINT 约束名]S PRIMARY KEY (列名[{列名}])2. 唯一性(UNIQUE)约束UNIQUE约束用于指明基本表在某一列或多个列的组合上的取值必须唯一。定义了UNIQUE约束的那些列称为唯一键,系统自动为唯一键建立唯一索引,从而保证了唯一键的唯一性。唯一键允许为空,但系统为保证其唯一性,最多只可以出现一个NULL值。UNIQUE既可用于列约束,也可用于表约束。UNIQUE用于定义列约束时,其语法格式如下:??????????????[C
文档评论(0)