Doge log

Abby CTO 雑賀 力王のオフィシャルサイトです

SQLServer 8060の壁

正直、お恥ずかしい話ですが知りませんでした・・・・。
SQLServer2000だと1行辺りの最大バイト数に制限があります。
でそれが8060バイト。
悩ましいのはどでかい文章をぶち込むケースだろう。
回避方法としてはtext型にするって方法があるけどtext型はwhere句に含めることができないっていう制限がある。
こりゃダメだ。
ちなみにSQLServer2005だと

SQL Server 2005 の varchar 型、nvarchar 型、varbinary 型、sql_variant 型、または CLR ユーザー定義型の列を含むテーブルでは、この制限が緩和されます。ただし、これらの型であっても、各列の長さは 8,000 バイトという制限の範囲内に収まる必要があります。ただし、これらの列を組み合わせた長さは 1 行あたり 8,060 バイトの制限を超えることができます。

だとさ。
うくく。