协慌网

登录 贡献 社区

重命名 SQL Server 2008 列

我正在使用 SQL Server 2008 和 Navicat。我需要使用 SQL 重命名表中的列。

ALTER TABLE table_name RENAME COLUMN old_name to new_name;

此语句不起作用。

答案

使用sp_rename

EXEC sp_RENAME 'TableName.OldColumnName' , 'NewColumnName', 'COLUMN'

请参阅: SQL SERVER –如何重命名列名或表名

文档: sp_rename (Transact-SQL)

对于您的情况将是:

EXEC sp_RENAME 'table_name.old_name', 'new_name', 'COLUMN'

请记住使用单引号将您的值括起来。

SQL ,还可以在 Microsoft SQL Server Management Studio 中执行此操作。以下是使用 GUI 的几种快速方法:

第一路

缓慢双击该列。列名将成为可编辑的文本框。


第二种方式

右键单击列,然后从上下文菜单中选择 “重命名”。

例如:

重命名列名


第三路

当您需要一次性重命名多个列时,这种方式是更可取的。

  1. 右键单击包含需要重命名的列的表。
  2. 单击设计
  3. 在表设计面板中,单击并编辑要更改的列名称的文本框。

例如:MSSMS表设计示例

注意:我知道 OP 特别要求 SQL 解决方案,以为这可能对其他人有所帮助:)

尝试:

EXEC sp_rename 'TableName.OldName', 'NewName', 'COLUMN'