4

SQL Server 2005 (7.0 ではない) では、256 またはその他の数値の代わりに NVARCHAR(255) を使用する理由はありますか?
最適なサイズはありますか? また、2 の累乗を使用する理由はありますか?

(Unicode データを格納するので、N VARCHAR を使用する必要があります)

4

5 に答える 5

3

SQL Server 2005 では、いいえ。255 を使用する唯一の理由は、他のプラットフォームとの移植性を考慮する必要がある場合です。他のいくつかのデータベース フレーバーでは、255 文字を超えると型の名前が完全に変更されます。

于 2009-07-24T14:15:39.447 に答える
2

SQL Server (2000 以前の IIRC) では、列の最適な (場合によっては最大でも) サイズは、テキストと画像のコンテンツを除くすべての列のサイズに依存します。8K はテーブル内のレコードの「自然な」サイズであると考えているため、列のサイズを合計すると 8000 バイト未満になるはずです。

SQL Server 2005 以降では、これはそれほど問題ではないと私は信じています。

于 2009-07-24T14:23:17.797 に答える
1

いいえ、2 のべき乗である最大フィールド長を選択する利点はありません。

これは、256 文字未満の文字列を格納する方法と 255 文字を超える文字列を格納する方法があったソフトウェア開発の古くて無愛想な時代からの名残です。

于 2009-07-24T14:17:47.260 に答える
1

最適なサイズは、データを格納するために必要な最大の長さです。

于 2009-07-24T14:13:26.410 に答える
-1

SQL 2005+ には、利用可能な最大サイズを使用する NVarChar(max) があります。その中に最大2GBまで保存できます。NTextと同じ

それらはすべてほとんど同じであるため、何を保存するかは実際には問題ではありません

于 2009-07-24T14:15:30.477 に答える