私はntext
フィールドを持つテーブルを持っています。それはvarbinary(max)
に切り替えることを決めた私の特定のケースでカラムタイプをntextからvarbinary(max)に変更してください
ntext, text, and image data types will be removed in a future version of Microsoft SQL Server. Avoid using these data types in new development work, and plan to modify applications that currently use them. Use nvarchar(max), varchar(max), and varbinary(max) instead.
:MSDNはntext
が非推奨となり、彼らは他のデータ型を示唆していることを述べています。私はテーブル定義を変更しようとしましたが、うまくいきませんでした。
ALTER TABLE MyTable ALTER COLUMN MyColumn VARBINARY(MAX);
varbinary(max)
の種類を変更する可能性は何ですか?ntext
- >nvarchar(max)
からnvarchar(max)
- >varbinary(max)
に変更しようとしましたが、これはできません(エラー:データ型nvarchar(max)からvarbinary(max)への暗黙的な変換はできません)。
唯一の解決策は、タイプvarbinary(max)
の新しい列を追加し、既存の値を新しい列に変換してから、古い列を削除することです。これは非常に時間がかかります(約15GBのデータセットで約30分かかります)。だからこそ私は同じことを達成するための他の可能性を調査しているのです(おそらく、データと変換を動かすことなく)。
ええ、私はその列にテキストを圧縮しました。 –
ありがとうございました。私たちは変換を実行する必要がありますね。 –