循环并重命名我的数据库中的所有表

时间:2014-11-05 16:57:45

标签: sql-server

由于某些要求,我需要为我的表添加一些前缀。新的命名约定必须适用于我的数据库中的所有现有表。例如:我有check但不符合我的需要。

TableA,TableB,TableC etc.    
My new tables should look:    
TableA_CA,TableB_CA,TableC_CA

1 个答案:

答案 0 :(得分:1)

在没有循环的情况下执行此操作的简单方法。试试这个。

DECLARE @sql NVARCHAR(max)=''

SELECT @sql += 'exec sp_rename ' + NAME + ',' + NAME + '_CA '
FROM   sys.tables
WHERE  NAME IN ( 'TableA', 'TableB', 'TableC' )

EXEC Sp_executesql
  @sql