テーブルの列の型を image から varbinary(max) に変更する手順を紹介します。
テーブルの image 型は今後のSQL Serverで削除される予定のため、今後の継続性を考えると、image型を新しい型に変更する必要があります。
(参考URL:https://docs.microsoft.com/ja-jp/sql/t-sql/data-types/ntext-text-and-image-transact-sql?view=sql-server-ver15)
新しいバージョンでは、image 型は varbinary(max) を使用します。
この記事では、image 型の列を varbinary(max)型に変更する手順を紹介します。
テーブルの再作成を防ぐため、SQLコマンドを実行する方法が短い時間で変更できます。
次のコマンドを実行します。
alter table (操作対象テーブル) alter column (データ型を変更する列名) varbinary(max)
alter tableコマンドによる列の型の変更の詳細はこちらの記事を参照してください。
Figure テーブルの FigureData 列の型を image型から varbinary(max)型に変換します。
次のSQLコマンドを実行します。
alter table Figure alter column FigureData varbinary(max)
コマンドを実行すると、すぐに処理が完了します。FigureData型が varvinary(max) に変更されたことが確認できます。
テーブルのレコード数が少なく、テーブルのサイズが小さい場合には、テーブルの再作成をしてもあまり時間がかからないため、テーブルデザイナを利用する方法もあります。