是否有任何 sql 语句用于将数据库中所有表的所有列名更改为大写?微软 SQL 服务器。
我有一个 sql 可以做到这一点,但不确定它是否正确。
运行下面的 SQL
select 'exec sp_rename '''+b.name+'.'+a.name+''','''+UPPER(a.name)+''',''column''' from syscolumns a, sysobjects b where a.id=b.id and b.type='U' order by b.name
复制上面的结果并执行
最佳答案
如果您要将应用程序从 SQL Server 2000 升级到更高版本,并且您正在为 SQL Server 区分大小写而苦苦挣扎,我建议您在执行此操作之前查看 SQL Server 2000 兼容性设置数据库的剧烈变化。
在 SQL Server 2008 管理工作室中
- 右键单击数据库并在上下文菜单中选择
属性
- 转到
选项
页面 - 在从顶部数第三个下拉列表中。选择
兼容级别:SQL Server 2000
至少那是很耗时的。
编辑:由于 OP 似乎正在将他的数据库从 SQL Server 2005 升级到 SQL Server 2005 上的"new"数据库,因此上述策略可能不是最佳的。
关于sql - 如何将 MS SQL Server 一个数据库中所有表的所有列名更改为大写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5270416/