Chinaunix

标题: 查询表中所有的约束 [打印本页]

作者: xxqn    时间: 2007-07-31 11:31
标题: 查询表中所有的约束
希望SQL查询表中的所有约束。怎样做?
作者: hxd001_810    时间: 2007-07-31 11:55
请执行:
exec sp_helpconstraint @objname=表名
go
即可
作者: sky_chenyu    时间: 2007-07-31 14:33
返回一个列表,其内容包括所有约束类型、约束类型的用户定义或系统提供的名称、定义约束类型时用到的列,以及定义约束的表达式(仅适用于 DEFAULT 和 CHECK 约束)。

重要事项:  
后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并应着手修改当前还在使用该功能的应用程序。 若要获取有关约束的信息,请查询 sys.key_constraints、sys.check_constraints 和 sys.default_constraints 目录视图。



Transact-SQL 语法约定

语法

sp_helpconstraint [ @objname = ] \'table\'
     [ , [ @nomsg = ] \'no_message\' ]


备注
执行 sp_help table 将报告有关指定表的所有信息。若要仅查看约束信息,请使用 sp_helpconstraint。

参数
[ @objname = ] \'table\'

关于所返回的约束信息的表。对于当前数据库而言,指定的表必须位于本地。table 的数据类型为 nvarchar(776),无默认值。

[ @nomsg =] \'no_message\'

打印表名的可选参数。no_message 的数据类型为 varchar(5),默认值是 msg。nomsg 表示取消打印。

返回代码值
0(成功)或 1(失败)

结果集
如果 sp_helpconstraint 参与到主键中,则它显示按降序索引的列。降序索引列将在结果集中列出,在其名称后带有减号 (-)。默认值(升序索引列)将仅按名称列出。

权限
要求具有 public 角色的成员身份。

示例
下面的示例显示 Product 表的所有约束。

复制代码
USE AdventureWorks;
GO
EXEC sp_helpconstraint \'Production.Product\';
作者: chorlate    时间: 2012-06-11 16:53
谢谢!!!!




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2