select name from sysobjects where id in ( select id from sysconstraints)
错了,应该是这一个 select name,xtype,type from sysobjects where id in ( select constid from sysconstraints)
选择出来的D是什么意思,F是外键,K是主键
这个比较好select a.id as tb_id,b.name as tb_name,a.constid as const_id,c.name as const_name from sysconstraints a inner join (select id,name from sysobjects)b on a.id=b.id inner join (select id,name from sysobjects) c on a.constid=c.id
select a.id as tb_id,b.name as tb_name,a.constid as const_id,c.name as const_name,c.xtype from sysconstraints a inner join (select id,name from sysobjects)b on a.id=b.id inner join (select id,name,xtype from sysobjects) c on a.constid=c.id where c.name='pk_report'
xtype说明C = CHECK 约束 D = 默认值或 DEFAULT 约束 F = FOREIGN KEY 约束 L = 日志 FN = 标量函数 IF = 内嵌表函数 P = 存储过程 PK = PRIMARY KEY 约束(类型是 K) RF = 复制筛选存储过程 S = 系统表 TF = 表函数 TR = 触发器 U = 用户表 UQ = UNIQUE 约束(类型是 K) V = 视图 X = 扩展存储过程
如果是CHECK 约束, 我怎样获取更细了, ckeck约束作用在在哪一列?
看看sysconstraints系统表,一切都在里面。
--默认值或 DEFAULT 约束 SELECT NAME FROM SYSOBJECTS WHERE XTYPE='D' --UNIQUE 约束 SELECT NAME FROM SYSOBJECTS WHERE XTYPE='UQ'--FOREIGN KEY 约束 SELECT NAME FROM SYSOBJECTS WHERE TYPE='F'--PRIMARY KEY 约束 SELECT NAME FROM SYSOBJECTS WHERE XTYPE='PK' --CHECK约束 SELECT NAME FROM SYSOBJECTS WHERE XTYPE='C'
select id from sysconstraints)
select name,xtype,type from sysobjects where id in (
select constid from sysconstraints)
from sysconstraints a inner join (select id,name from sysobjects)b
on a.id=b.id
inner join (select id,name from sysobjects) c
on a.constid=c.id
from sysconstraints a inner join (select id,name from sysobjects)b
on a.id=b.id
inner join (select id,name,xtype from sysobjects) c
on a.constid=c.id
where c.name='pk_report'
D = 默认值或 DEFAULT 约束
F = FOREIGN KEY 约束
L = 日志
FN = 标量函数
IF = 内嵌表函数
P = 存储过程
PK = PRIMARY KEY 约束(类型是 K)
RF = 复制筛选存储过程
S = 系统表
TF = 表函数
TR = 触发器
U = 用户表
UQ = UNIQUE 约束(类型是 K)
V = 视图
X = 扩展存储过程
SELECT NAME FROM SYSOBJECTS WHERE XTYPE='D'
--UNIQUE 约束
SELECT NAME FROM SYSOBJECTS WHERE XTYPE='UQ'--FOREIGN KEY 约束
SELECT NAME FROM SYSOBJECTS WHERE TYPE='F'--PRIMARY KEY 约束
SELECT NAME FROM SYSOBJECTS WHERE XTYPE='PK'
--CHECK约束
SELECT NAME FROM SYSOBJECTS WHERE XTYPE='C'