トップ回答者
複数行TEXTBOX(改行あり)のDB更新について

質問
-
はじめまして。
下記環境にて開発しております。・VisualStudio2003(VB.NET)
・SQLServer2000WebページにTEXTBOXを配置し、Multilineに設定し複数行入力
可能にしています。
そこに入力された文字列を、DBのTEXT型の項目にセットし、
再度、TEXTBOXへ表示すると改行コードがなくなり、1行になって
表示されてしまいます。ただし、DBに直接入力して、改行させた文字列は改行されて表示
されました。DB更新時に、改行コードを変換する必要等があるのでしょうか。
何か対処方法がありましたら、ご教授ください。よろしくお願いします。
回答
-
では、DB は関係ないという話です。
txtBinko が件の MultiLine に設定したテキストボックスのインスタンスだと仮定しますが、通常は txtBiko.Text には「\r\n」等の改行コードが入っているはずです。すみませんが、もう少し正確なコードを出してもらえますか?そしてもう少しデバッグして下さい。
TextBox には Text というプロパティはありますが、text というプロパティはありませんし、「備考」の値をシングルクォーテーションで囲もうとしているようですが、閉じがありません。(パラメタライズドクエリを使うべきですが)
すべての返信
-
囚人 さんからの引用 デバッグしましたか?どこで改行が消えてしまったのか確認しましょう。 書き込みありがとうございます。
下記、SQLを生成するときに、txtBikoという複数行の項目を使用しています。
sqltext = "UPDATE tblTEST SET 備考=’" & txtBiko.text & "’"
txtBiko.text をウォッチ式にいれて確認したところ、
画面の入力値:
てすと1(改行)
てすと2(改行)
てすと3txtBiko.textのウォッチ式:
てすと1てすと2てすと3
更新後、データを再表示すると、改行がなくなっている状態です。
DBも確認したところ、一行になってしまっていました。ブラウザは、IE6Sp2を使用しています。
-
では、DB は関係ないという話です。
txtBinko が件の MultiLine に設定したテキストボックスのインスタンスだと仮定しますが、通常は txtBiko.Text には「\r\n」等の改行コードが入っているはずです。すみませんが、もう少し正確なコードを出してもらえますか?そしてもう少しデバッグして下さい。
TextBox には Text というプロパティはありますが、text というプロパティはありませんし、「備考」の値をシングルクォーテーションで囲もうとしているようですが、閉じがありません。(パラメタライズドクエリを使うべきですが)