tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re: リッチテキストのデータ
投稿日: 2008/05/08(Thu) 20:25
投稿者魔界の仮面弁士
要は、
 UPDATE Table Set Field = 'I am a boy.'
は OK でも、
 UPDATE Table Set Field = 'I'm a boy.'
は NG だ、という話ですよね。


対処方法としては、「'」等をエスケープして
 UPDATE Table Set Field = 'I''m a boy.'
とすれば動作しますが、こういう場合には、ADODB.Parameter を使った方が良いでしょう。

手元に SQL Server が無いのでうろ覚えですが、ADODB.Command オブジェクトを使って
 Set cmd.ActiveConnection = cn
 cmd.CommandText = "UPDATE Table SET RTF = ? WHERE ID = ?"
などとしておいて、
 cmd.Parameters(0).Value = RTF1
 cmd.Parameters(1).Value = ID1
 cmd.Execute
 cmd.Parameters(0).Value = RTF2
 cmd.Parameters(1).Value = ID2
 cmd.Execute
のようにして実行すれば良かったような気が。あるいは、省略構文として
 cmd.Execute , Array(RTF3, ID3)
 cmd.Execute , Array(RTF4, ID4)
とか。


なお、パラメータの定義は、cmd.Refresh すれば取得されますが、
パフォーマンス重視の場合は、CreateParameter メソッドで定義してください。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。