我使用SQL Server 2008和Navicat。我需要使用SQL重命名表中的列。
ALTER TABLE table_name RENAME COLUMN old_name to new_name;
这个说法不成立。
我使用SQL Server 2008和Navicat。我需要使用SQL重命名表中的列。
ALTER TABLE table_name RENAME COLUMN old_name to new_name;
这个说法不成立。
当前回答
Try:
EXEC sp_rename 'TableName.OldName', 'NewName', 'COLUMN'
其他回答
使用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'
记住使用单引号将值括起来。
因为我经常来这里,然后想知道如何使用括号,这个答案可能对像我这样的人有用。
EXEC sp_rename '[DB].[dbo].[Tablename].OldColumnName', 'NewColumnName', 'COLUMN';
OldColumnName不能在[]中。这是行不通的。 不要在[]中输入NewColumnName,它会生成[[NewColumnName]]。
运行查询:
SP_RENAME '[TableName].[ColumnName]','NewNameForColumn'
或者你可以在SQL Management Studio中慢点两次列并通过UI重命名它…
Try:
EXEC sp_rename 'TableName.OldName', 'NewName', 'COLUMN'