列の変更 (データベース エンジン)
SQL Server Management Studioまたは Transact-SQL を使用して、SQL Server 2014 の列のデータ型を変更できます。
警告
既にデータが格納されている列のデータ型を変更すると、既存のデータが新しい型に変換される時点で、それらのデータは完全に失われます。 さらに、変更した列に依存しているコードやアプリケーションも正常に動作しなくなる場合があります。 これには、クエリ、ビュー、ストアド プロシージャ、ユーザー定義関数、およびクライアント アプリケーションが含まれます。 このようなエラーは連鎖するので注意が必要です。 たとえば、変更した列に依存しているユーザー定義関数を呼び出すストアド プロシージャは、正常に動作しない可能性があります。 列に対して変更を行う場合は、よく考えてから行う必要があります。
このトピックの内容
作業を開始する準備:
列のデータ型を変更する方法:
はじめに
セキュリティ
アクセス許可
テーブルに対する ALTER 権限が必要です。
SQL Server Management Studio を使用する
列のデータ型を変更するには
オブジェクト エクスプローラーで、有効桁数を変更する列が含まれているテーブルを右クリックし、 [デザイン]をクリックします。
データ型を変更する列を選択します。
[列のプロパティ] タブで、 [データ型] プロパティのグリッド セルをクリックし、ドロップダウン リストから新しいデータ型を選択します。
[ファイル] メニューの [<テーブル名> を保存] をクリックします。
注意
列のデータ型を変更すると、テーブル デザイナーでは選択したデータ型の既定の長さが適用されます。これは既に別の長さを選択していた場合でも同じです。 データ型の指定後、必要な値を格納できるようにするために、データ型に適切な長さを設定してください。
警告
別のテーブルに関連付けられている列のデータ型を変更しようとすると、別のテーブルの列にも変更が行われることを確認するメッセージがテーブル デザイナーに表示されます。
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 (Transact-SQL)」を参照してください。