修改資料行

適用於:SQL Server 2016 (13.x) 和更新版本Azure SQL DatabaseAzure SQL 受控執行個體Azure Synapse AnalyticsAnalytics Platform System (PDW)

您可以使用 SQL Server Management Studio 或 Transact-SQL 來修改 SQL Server 中資料行的資料類型。

警告

修改已經包含資料之資料行的資料類型可能會在現有資料轉換為新類型時,導致資料永久喪失。 此外,依據修改資料行的程式碼和應用程式可能會失敗。 這些包含查詢、檢視、預存程序、使用者自訂函數,以及用戶端應用程式。 注意,這些失敗會串聯。 例如,呼叫相依於已修改資料行之使用者自訂函數的預存程序可能會失敗。 在對資料行進行任何變更之前,請審慎考慮。

權限

需要資料表的 ALTER 權限。

使用 SQL Server Management Studio (SSMS)

若要使用 SSMS 修改資料行的資料類型

  1. 在 [物件總管] 中,找到要變更小數位數的資料行,以滑鼠右鍵按一下包含該資料行的資料表,然後選取 [設計]。

  2. 選取要修改資料類型的資料行。

  3. 在 [資料行屬性] 索引標籤中,選取 [資料類型] 屬性的方格資料格,並且從下拉式清單中選擇新的資料類型。

  4. 在 [檔案] 功能表上,選取 [儲存資料表名稱]。

注意

在修改資料行的資料類型時,資料表設計工具會套用所選取資料類型的預設長度,即使您已經指定另一個資料類型也是如此。 一定要在指定資料類型之後,設定所需值的資料類型長度。

警告

如果您嘗試修改與其他資料表相關之資料行的資料類型,資料表設計工具會要求您確認也會針對其他資料表中的資料行進行此變更。

使用 Transact-SQL

若要使用 Transact-SQL 修改資料行的資料類型

  1. 在物件總管中,連線到資料庫引擎的執行個體。

  2. 在標準列上,選取 [新增查詢] 。

  3. 複製下列範例並將其貼到查詢視窗中,然後選取 [執行]。

    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  
    

下一步