我正在使用SQL Server 2012,并且我有一个包含1000个表的数据库。我当前的表设计对每个表都有一个主键。现在,我的设计已更改为使用复合主键。如何使用批量alter语句添加复合主键?
例如:
alter table table_name
add primary key (col_name1, col_name2);
答案 0 :(得分:0)
使用sp_MSforeachtable
系统过程(未记录)遍历所有表:
EXEC sp_MSforeachtable @command1="alter table ? add primary key (col_name1, col_name2)"
GO
请确保您没有定义主键,以便可以平稳运行。可能要花一些时间!