質問者
SqlDataAdpter Updateで文字書き込み制限があるのでしょうか?

質問
-
SQL Server2000で、フィールドで、データ型をvarchar指定して、長さ8000(最大文字に設定)
下記の処理をしたところ、TextBoxの文字数約1900文字をUpdate処理をした時点で1600文字になり残りの文字が書き込みません。何かUpdate処理には制約があるのでしょうか。(ある書籍を参考していますがその中では最大8000文字が格納できるのなっていたのですが)
Dim a As BindingManagerBase = BindingContext(DsReport1, "report_comment")
Dim b As DataRowView = CType(a.Current, DataRowView)
b.BeginEdit()
b(""report_comment") = txtComment.Text
'この時点ではrepot_commentには1900文字が格納されているようです
b.EndEdit()
SqlDataAdapter1.Update(DsReport1, "report_comment")
再度、表示(格納文章)をすると1600文字までしか表示(格納)されません、いろいろ調べながら動かして見ると、どうもUpdate時に1600以降を無視(?)して格納しているようなのですが、どなたかご指導をお願いします
すべての返信
-
中博俊様
いつもご指導ありがとうございます。
早速、nvarcharに変更をしてテストをしましたが、やはり1600文字以降は格納できませんでした。
パラメータですが、’Winsiwsフォームでデザイン・・・のことでしょうか?(申し訳ないのですがよくわからないので)その中であれば、下記のように8箇所ありました。
me.SqlUpdateCommand2.Parameters.Add(・・・・("@テー名",System.Data.SqlDbType.VaChar, 1600, ("@テー名",))
me.SqlUpdateCommand2.Parameters.Add(・・・・("Original_@テー名",System.Data.SqlDbType.VaChar, 1600, ・・・・)
Me.SqlInsertCommand2・・・・
Me.SqlDeleteCommand2・・・
Me.SqlDeleteCommand3・・・
Me.SqlInsertCommand3・・・・
me.SqlUpdateCommand3・・・・・
me.SqlUpdateCommand3・・・・・
VaChar, 1600 のところを8000に変えてもよいものでしょうか?
つたない説明で申し訳ございませんが、ご指導のほどよろしくお願いします。