SQL Server 2008 如何查看,创建,删除约束
SQL Server中有五种约束类型,分别是 PRIMARY KEY约束、FOREIGN KEY约束、UNIQUE约束、DEFAULT约束、和CHECK约束。查看或者创建约束都要使用到 Microsoft SQL Server Managment Studio。
.PRIMARY KEY约束
在表中常有一列或多列的组合,其值能唯一标识表中的每一行。这样的一列或多列成为表的主键(Primary Key)。一个表只能有一个主键,而且主键约束中的列不能为空值。查看PRIMARY KEY约束可以在object explorer中依次展开Databases -- 选择你要查看的数据库 -- Tables -- 你要查看的表 -- Columns
Primary Key 有一把金色的小钥匙。companyid 即为company表的primary key。创建PRIMARY KEY约束可以右键点击表,然后选择Design,打开表设计器
选中column,点击上面的金色小钥匙,来创建Primary Key。也可以右键点击column,然后选择Set Primary Key。
.{ CHECK | NOCHECK} CONSTRAINT指定启用或禁用constraint_name。如果禁用,将来插入或更新该列时将不用该约束条件进行验证。此选项只能与 FOREIGN KEY 和 CHECK 约束一起使用。
ALL指定使用 NOCHECK 选项禁用所有约束,或者使用 CHECK 选项启用所有约束。
SQLServer临时禁用和启用所有外键约束
获得禁用所有外键约束的语句
select 'ALTER TABLE [' + b.name + '] NOCHECK CONSTRAINT ' + a.name +';'
from sysobjects a ,sysobjects b
where a.xtype ='f' and a.parent_obj = b.id
获得启用所有外键约束的语句
.UNIQUE 约束
可以使用 UNIQUE 约束确保在非主键列中不输入重复的值.尽管 UNIQUE 约束和 PRIMARY KEY 约束都强制唯一性,但想要强制一列或多列组合(不是主键)的唯一性时应使用 UNIQUE 约束而不是 PRIMARY KEY 约束.
可以对一个表定义多个 UNIQUE 约束,但只能定义一个 PRIMARY KEY 约束.
而且,UNIQUE 约束允许 NULL 值,这一点与 PRIMARY KEY 约束不同.不过,当与参与 UNIQUE 约束的任何值一起使用时,每列只允许一个空值.
.FOREIGN KEY 约束可以引用 UNIQUE 约束.
使用企业管理器删除约束
在企业管理器中打开一个存在约束的数据表,然后在设计表窗口中可以删除主键约束和默认约束,删除其他类型的约束需打开“属性”对话框,然后在指定的
约束选项卡中单击“删除”按钮即可删除