我有一个列,想更改它的名称,但没有其他使用查询,最好的方法是什么。
问问题
7827 次
4 回答
4
您可以使用系统存储过程sp_rename
:
EXEC sp_rename 'dbo.Test.OldName', 'NewName', 'COLUMN';
这是包含 1000 条记录的完整示例:
create table dbo.Test(ID int IDENTITY(1,1), OldName varchar(10));
declare @i int;
SET @i = 0;
WHILE @i < 1000
BEGIN
SET @i = @i + 1;
INSERT INTO dbo.Test Values(CAST(@i AS varchar(4))+ '. record');
END;
SELECT * FROM dbo.Test;
EXEC sp_rename 'dbo.Test.OldName', 'NewName', 'COLUMN';
SELECT * FROM dbo.Test;
DROP TABLE dbo.Test;
于 2012-10-24T11:03:21.050 回答
4
您可以使用
sp_RENAME 'TableName.[Your_Old_ColumnName]' , '[Your_New_ColumnName]', 'COLUMN'
注意:重命名列名会破坏您的查询、存储过程等。
于 2012-10-24T11:00:48.873 回答
2
调用存储过程sp_rename应该是最简单最快的方法
USE AdventureWorks2008R2;
GO
EXEC sp_rename 'Sales.SalesTerritory.TerritoryID', 'TerrID', 'COLUMN';
GO
于 2012-10-24T11:04:13.863 回答
2
EXEC sp_rename 'myColumn', 'myColumn2', 'COLUMN'
于 2012-10-24T10:57:09.343 回答