我在 SQL Server 2005 数据库中有大约 200 个表。几乎所有表的列名都是“AAA”,我想将其 FK 设置为表 tbl_AAA 中的列 A_ID。我想知道如何在 SQL Server 2005 中执行此操作?
答案1
您可以使用系统视图“INFORMATION_SCHEMA.COLUMNS”并建立一个查询,该查询将产生执行任务所需的 DDL 语句。
SELECT
'ALTER TABLE '
+ TABLE_NAME
+ ' ADD FOREIGN KEY ('
+ COLUMN_NAME
+ ') REFERENCES tbl_AAA(AAA);'
FROM
INFORMATION_SCHEMA.COLUMNS
WHERE
COLUMN_NAME = 'AAA'
AND TABLE_NAME <> 'tbl_AAA';
您可以将此输出粘贴到 SSMS 并执行它。我已经完成了这个,所以您可能需要检查/调整/更正以满足您的需求。
干杯