【发布时间】:2012-04-10 06:29:08
【问题描述】:
我对 SQL Server 2008 没有太多经验,我想重命名数据库中的所有列(在现有名称中添加一些前缀)。
我在想这样的事情:
Foreach( column in table)
(
column_name = prefix+column_name
)
有什么办法吗?
非常感谢。
【问题讨论】:
标签: sql-server sql-server-2008 tsql ddl
我对 SQL Server 2008 没有太多经验,我想重命名数据库中的所有列(在现有名称中添加一些前缀)。
我在想这样的事情:
Foreach( column in table)
(
column_name = prefix+column_name
)
有什么办法吗?
非常感谢。
【问题讨论】:
标签: sql-server sql-server-2008 tsql ddl
您可以尝试以下解决方案:使用游标遍历sys.columns 表中的记录,并为每条记录执行sp_rename 系统存储过程。 我认为重命名时可能会出现完整性问题,因此您需要小心引用这些列的其他对象(例如存储过程)。
更新:MVP 说:
【讨论】:
您可以尝试使用sp_RENAME。它一次只允许单列。但是您可以在代码上执行此操作以在每一列上循环。希望能帮助到你。谢谢!
【讨论】: