0

VARBINARY(8000)として宣言されたフィールドを持つSQLServer2008テーブルがあります

このテーブルへの書き込みにはストアドプロシージャが使用され、VARBINARY(8000)のパラメーターを取ります。

C#コードは、このパラメーターとしてbyte[]を渡すストアドプロシージャを呼び出します。

特定の状況では、フィールドが大きすぎるためにSQL例外がスローされます。

これは簡単な質問のように思えますが、これまでのところ答えを見つけることができませんでした

SQLフィールドをオーバーフローさせないためにbyte[]をどのくらい大きくすることができますか?

4

4 に答える 4

0

フィールドをオーバーフローしないように、byte[]は最大8000にすることができます。

于 2013-03-26T11:04:13.507 に答える
0

VARBINARY(8000)として宣言されたフィールドを持つSQLServer2008テーブルがあります

..。

SQLフィールドをオーバーフローさせないためにbyte[]をどのくらい大きくすることができますか?

これはトリックの質問のように感じますが、ここでの「明白な」答えは8000バイトです。

于 2013-03-26T11:04:37.193 に答える
0

あなたの場合は8000ですが、これを使用して最大許容サイズを使用しないVARBINARY(MAX)と、2^31-1バイトを格納できます。MSDNのbinaryおよびvarbinaryを参照してください。

于 2013-03-26T11:15:10.733 に答える
0

テーブルのトリガーが原因の問題。トリガーによって行われた作業は、例外をスローしていました。テーブルに書き込まれるデータとは何の関係もありませんでした。

すべてまたはあなたの助けに感謝します

于 2013-03-27T15:54:25.710 に答える