0

ここで、私のデータ レコードのフィールドは、nvarchar の 8000 文字の制限を超える可能性があり、たとえば約 9000 文字のかなり大きなデータ型を探しています。何かアイデアはありますか? 最初は を使用していましNvarChar(8000)たが、この境界を通過できるものがあることを発見した後、NText 次に何が起こるかを確認していましInsert statementData Adapter.挿入コマンドでジョブを実行する必要があります。定義されたパラメーターは次のようになります。

cmdIns.Parameters.Add("@story", SqlDbType.NText, 16, "Story")

16の制限は、使用中に自動的に増加するようEFですが、Data Adapterそして、データの16文字を挿入するだけです)、本当にわかりません(覚えていません)EFでのテストは、8000より大きいアイテム? だとしたらその理由が気になります。

状況は、適切なデータ型を決定することであり、この大きなデータ フィールドの挿入ポイントで使用される同等の作業パラメータです。

注:ここでは SQL Server CE を使用しています


編集 :

申し訳ありませんが、私はその時に行かなければなりませんでした.使用すべきデータ型はNTEXTここでは代替手段がありませんが、定義するの**insertion Statement and parameter**は少し面倒です.

  • 長さを定義しないと、エラーが発生します (実行時) !
  • また、AddWithValueを使用すると、DataAdapter を使用できず、一括で挿入できませんでした。別の質問に入れる必要があるかもしれませんが、これはこの質問の一部であり、ここでの有効な回答は完全なものになる可能性があります. 何か案は ?
4

2 に答える 2

1

私があなたの質問を正しく理解していれば、このようなことをしても問題ないはずです。サイズは必要ないので省略してください。

cmdIns.Parameters.Add( new SqlParameter( "story", SqlDbType.NText )
{
    Value = yourVariable;
} );
于 2012-07-08T07:32:01.947 に答える
1

名前と値を指定してパラメーターを追加する場合は、常に AddWithValue を使用します。このコマンドのように.Parameters.AddWithValue("@story", story);

于 2012-07-08T07:13:59.673 に答える