SELECT 主键列ID=b.rkey
,主键列名=(SELECT name FROM syscolumns WHERE colid=b.rkey AND id=b.rkeyid)
,外键表ID=b.fkeyid
,外键表名称=object_name(b.fkeyid)
,外键列ID=b.fkey
,外键列名=(SELECT name FROM syscolumns WHERE colid=b.fkey AND id=b.fkeyid)
,级联更新=ObjectProperty(a.id,'CnstIsUpdateCascade')
,级联删除=ObjectProperty(a.id,'CnstIsDeleteCascade')
FROM sysobjects a
join sysforeignkeys b on a.id=b.constid
join sysobjects c on a.parent_obj=c.id
where a.xtype='f' AND c.xtype='U'
and object_name(b.rkeyid)='titles'
,主键列名=(SELECT name FROM syscolumns WHERE colid=b.rkey AND id=b.rkeyid)
,外键表ID=b.fkeyid
,外键表名称=object_name(b.fkeyid)
,外键列ID=b.fkey
,外键列名=(SELECT name FROM syscolumns WHERE colid=b.fkey AND id=b.fkeyid)
,级联更新=ObjectProperty(a.id,'CnstIsUpdateCascade')
,级联删除=ObjectProperty(a.id,'CnstIsDeleteCascade')
FROM sysobjects a
join sysforeignkeys b on a.id=b.constid
join sysobjects c on a.parent_obj=c.id
where a.xtype='f' AND c.xtype='U'
and object_name(b.rkeyid)='titles'
解决方案 »
- 求助!!!!
- 通过作业给服务器insert数据的时候,作业在进行的时候,select查询特别慢,
- 临时抱佛脚——【求一段SQL】
- 关于触发器只取得一行更新数据问题
- 目前应用最多 最简单 最容易安装的内存数据库是什么啊?
- 有一个商品销售记录表,如何用SQL语句列出给定时间区间内每年每月的销售总额,及该时间区间内的月总额的最大值?
- 求高手帮我把2008的数据库文件导成2005版本用的~~!!!
- sql2008 r2 运行慢的问题
- 用bcp如何实现客户端的txt文本导入服务器?
- 我问一个深一点的问题,关于数据库的。。。
- esists是如何等同与in的
- MSSQL2005服务器COLLATION繁简体中文出现乱码
那么不就要每次都改? 能不能有一个方法可能自动检查 A.a 的某行记录是否 Deleteable?
if not exists(select 1 from b , a where b.a = a.a and a.a = '...')
delete from a where a = '...'或者
if not exists(select 1 from b where a = '...')
delete from a where a = '...'
我的意思是 2个表存在 关系约束对于外键约束来说, 是 对表B.a 列进行约束的吧? 也就是当删除 A.a 的记录时,不能让表B的记录违法这个约束
然而,并不是所有A的记录的删除,都会让表B的记录违法这个约束