2011-08-07 14 views

答えて

27

ntextタイプは、textimageのように非推奨です。マイクロソフトでは、それぞれnvarchar(max),varchar(max)およびvarbinary(max)に置き換えることをお勧めします。

nvarchar(max)を使用してください。

リファレンス:

1

NVARCHAR(MAX)のデフォルト設定は、テキストが二重4000で8,000バイト(上でなければ、テーブル構造で、そのテキスト値を格納することです-byte chars)は、NTEXTのように動作し、LOBにテキスト値を格納し、テーブルのテキストへのポインタを格納します。これはパフォーマンスが大幅に低下します。

簡潔に言えば、8Kを超えるバイトを失うことが問題であれば、NVARCHAR(4000)に行ってください。

+2

最大明示的な制限は、4000 8000は' varchar'ためです:

ntext型はも参照データ型はnvarchar(MAX)の賛成で、将来的に廃止される可能性があります。 –

+0

thx。これを反映するための編集済みの回答(つまり、8K = 4Kの2バイト文字) – Bohemian

+2

データを失うのはいつか「OK」ですか? –

7

nvarchar(MAX)を使用する利点は、nvarchar(MAX)ではReplace、Left、Lenなどの関数を実行できますが、ntextでは実行できないことです。 ntextローカル変数もストアドプロシージャでは作成できませんが、nvarchar(MAX)はストアドプロシージャで作成することはできません。 nvarchar` `ため

ntext, text, and image

関連する問題