Sqlserver_小工具_批量字段约束处理

获取所有表与表之间的外键约束
SELECT b.name,a.name,c.name FROM sys.foreign_keys a INNER JOIN sys.tables b ON a.referenced_object_id=b.object_id INNER JOIN sys.tables c ON a.parent_object_id=c.object_id

--所有约束创建语句
SELECT CONCAT('ALTER TABLE [',d.name,'] ADD  CONSTRAINT [',b.name,'] FOREIGN KEY(',e.name,') REFERENCES [',c.name,'](',f.name,')')
FROM sys.sysforeignkeys a
INNER JOIN sys.foreign_keys b ON a.constid=b.object_id
INNER JOIN sys.tables c ON b.referenced_object_id=c.object_id
INNER JOIN sys.tables d ON b.parent_object_id=d.object_id
INNER JOIN sys.syscolumns e ON a.fkey=e.colid AND e.id=a.fkeyid
INNER JOIN sys.syscolumns f ON a.rkey=f.colid AND f.id=a.rkeyid
WHERE a.constid=2078630448

--所有约束删除语句
SELECT CONCAT('ALTER TABLE [',d.name,'] DROP CONSTRAINT [',b.name,']')
FROM sys.sysforeignkeys a
INNER JOIN sys.foreign_keys b ON a.constid=b.object_id
INNER JOIN sys.tables c ON b.referenced_object_id=c.object_id
INNER JOIN sys.tables d ON b.parent_object_id=d.object_id
原文地址:https://www.cnblogs.com/Thancoo/p/columnconstraint.html