重新命名資料行 (資料庫引擎)
適用於:SQL Server 2016 (13.x) 和更新版本 Azure SQL 資料庫 Azure SQL 受控執行個體
您可以使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 中重新命名資料表資料行。
限制
重新命名資料行不會自動重新命名該資料行的參考。 您必須手動修改任何參考重新命名之資料行的物件。 例如,如果您重新命名資料表資料行,且有觸發程序參考這個資料行,您必須修改觸發程序來反映新的資料行名稱。 在重新命名物件之前,請利用 sys.sql_expression_dependencies 來列出其相依性。
重新命名資料行不會自動更新任何從該資料表 SELECT
所有資料行 (使用 *
) 之物件的中繼資料。 例如,如果您重新命名資料表資料行,而且該資料行是由非結構描述繫結檢視或函式所參考並 SELECT 所有資料行 (使用 *
),則該檢視或函數的中繼資料會繼續反映原始資料行名稱。 使用 sp_refreshsqlmodule 或 sp_refreshview 重新整理中繼資料。
權限
需要物件的 ALTER
權限。
使用 SQL Server Management Studio
使用物件總管來重新命名資料行
- 在物件總管中,連線到資料庫引擎的執行個體。
- 在物件總管中,以滑鼠右鍵按一下您想要重新命名資料行的資料表,然後選擇 [重新命名]。
- 輸入新的資料行名稱。
使用資料表設計工具來重新命名資料行
- 在物件總管中,以滑鼠右鍵按一下您想要重新命名資料行的資料表,然後選擇 [設計]。
- 在 [資料行名稱]下,選取您要變更的名稱,並輸入新名稱。
- 在 [檔案] 功能表上,選取 [儲存 資料表名稱]。
您也可以在 [資料行屬性] 索引標籤中變更資料行的名稱。請選取您要變更名稱的資料行,並輸入新的 [名稱] 值。
使用 Transact-SQL
重新命名資料行
下列範例會將 AdventureWorksLT
資料庫 dbo.ErrorLog
資料表中的 ErrorTime
資料行重新命名為 ErrorDateTime
。
EXEC sp_rename 'dbo.ErrorLog.ErrorTime', 'ErrorDateTime', 'COLUMN';
請注意輸出警告,並確認其他物件或查詢未中斷:
Caution: Changing any part of an object name could break scripts and stored procedures.
如需詳細資訊,請參閱 sp_rename。