適用於: SQL Server 2016 (13.x)或更高版本
Azure SQL Database
Azure SQL 受控實例
Azure Synapse Analytics
分析平台系統 (PDW)
Microsoft Fabric 中的 SQL 資料庫
您可以使用 SQL Server Management Studio 或 Transact-SQL 來修改 SQL Server 中資料行的資料類型。
警告
修改已經包含資料之資料行的資料類型可能會在現有資料轉換為新類型時,導致資料永久喪失。 此外,依賴已修改欄位的程式碼和應用程式可能會失敗。 這些包含查詢、檢視、預存程序、使用者自訂函數,以及用戶端應用程式。 這些失敗會引發連鎖反應。 例如,一個呼叫依賴已修改資料行之使用者自訂函數的預存程序可能會失敗。 在對資料行進行任何變更時,請審慎考慮您想要進行的變動。
權限
需要資料表的 ALTER 權限。
使用 SQL Server Management Studio (SSMS)
使用 SSMS 修改資料行的資料類型
在 [物件總管] 中,右鍵按一下包含要更改範圍資料行的資料表,然後選取 [設計]。
請選擇要修改資料類型的欄位。
在 [資料行屬性] 索引標籤中,選取 [資料類型] 屬性的方格資料格,並且從下拉式清單中選擇新的資料類型。
在 [檔案] 功能表中,選取 [儲存表格名稱]。
注意
在修改資料行的資料類型時,資料表設計工具會套用所選取資料類型的預設長度,即使您已經指定另一個資料類型也是如此。 請在指定資料類型之後,將資料類型長度設定為所需的值。
警告
如果您嘗試修改與其他資料表相關之資料行的資料類型,資料表設計工具會要求您確認也會針對其他資料表中的資料行進行此變更。
使用 Transact-SQL
使用 Transact-SQL 修改資料行的資料類型
在物件總管中,連線到資料庫引擎實例。
在標準列上,選取 [新增查詢]。
複製下列範例並將其貼到查詢視窗中,然後選取 [執行]。
CREATE TABLE dbo.doc_exy (column_a INT ); GO INSERT INTO dbo.doc_exy (column_a) VALUES (10); GO ALTER TABLE dbo.doc_exy ALTER COLUMN column_a DECIMAL (5, 2); GO
如需使用 ALTER TABLE
修改欄位的詳細資訊,請參閱 ALTER TABLE column_definition。