常にnvarchar(MAX)を使用すると何かデメリットがありますか? 質問する

常にnvarchar(MAX)を使用すると何かデメリットがありますか? 質問する

SQL Server 2005 では、長さを明示的に指定するのではなく (例: nvarchar(255))、すべての文字フィールドを nvarchar(MAX) にすることに何かデメリットはありますか? (データベース レベルでフィールドの長さを制限できないという明らかなデメリットは別として)

ベストアンサー1

MSDN フォーラムでも同じ質問がありました:

元の投稿から(さらに詳しい情報があります):

VARCHAR(N) 列にデータを格納する場合、値は物理的に同じ方法で格納されます。ただし、VARCHAR(MAX) 列に格納する場合、画面の背後ではデータは TEXT 値として処理されます。そのため、VARCHAR(MAX) 値を処理する場合は、追加の処理が必要になります。(サイズが 8000 を超える場合のみ)

VARCHAR(MAX) または NVARCHAR(MAX) は、「大きな値型」と見なされます。大きな値型は通常、「行外」に格納されます。つまり、データ行には、「大きな値」が格納されている別の場所へのポインターが含まれます...

おすすめ記事