以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 往数据库字段存入RichTextBoxr的rtf时出错 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=71060) |
|
-- 作者:lzzhx -- 发布时间:2015/7/3 22:24:00 -- 往数据库字段存入RichTextBoxr的rtf时出错 请教老师: 我用RichTextBoxr控件,在将控件的rtf存入数据库表时出错,信息如下: 代码: cmd.CommandText = "Insert Into {内部通讯} ([发送者ID],[接收者ID],[发送时间],[内容],[文件]) Values (\'" cmd.CommandText = cmd.CommandText & _UserID & "\',\'"& xzyhbh & "\',#" & Date.Now & "#,\'" & ct1.RTF & "\',\'" & filename & "\')" 出错信息: 语法错误 (操作符丢失) 在查询表达式 \'\'[\\rtf1\\ansi\\ansicpg936\\deff0\\deflang1033\\deflangfe2052[\\fonttbl[\\f0\\fnil\\fcharset134 \\\'cb\\\'ce\\\'cc\\\'e5;]] [\\colortbl ;\\red255\\green0\\blue0;] \\viewkind4\\uc1\\pard\\cf1\\lang2052\\f0\\fs18 1414\\par ] \'\' 中。 请老师看看是什么问题,是不是 ct1.RTF 还需要进行什么操作才能使用? [此贴子已经被作者于2015/7/3 22:33:43编辑过]
|
|
-- 作者:lzzhx -- 发布时间:2015/7/3 22:33:00 -- 不好意思,前面多打了一个jf
|
|
-- 作者:狐狸爸爸 -- 发布时间:2015/7/4 9:07:00 -- 你还是用foxtbale自己的写入和保存去处理吧. 方法一,作为字符列 http://www.foxtable.com/help/topics/2898.htm 方法二,作为二进制列: http://www.foxtable.com/help/topics/2950.htm |
|
-- 作者:lzzhx -- 发布时间:2015/7/4 22:58:00 -- 你还是用foxtbale自己的写入和保存去处理吧. 方法一,作为字符列 http://www.foxtable.com/help/topics/2898.htm 方法二,作为二进制列: http://www.foxtable.com/help/topics/2950.htm 用第二种方法试了一下,还是不成功。 ct.rtf = dr.SQLGetValue("内容") 这句代码还是不会写 错误信息:从类型“Byte()”到类型“String”的转换无效。 请老师说说,将表中二进制列“内容”的值读出来后,如何显示在 richtextbox中 ? |
|
-- 作者:大红袍 -- 发布时间:2015/7/5 9:21:00 -- 试试这样,不行就上传例子,或者可测试的代码。
cmd.CommandText = cmd.CommandText & _UserID & "\',\'"& xzyhbh & "\',#" & Date.Now & "#,\'" & ct1.RTF.replace("\'", "\'\'") & "\',\'" & filename & "\')" |
|
-- 作者:狐狸爸爸 -- 发布时间:2015/7/5 9:31:00 -- ct.rtf = dr.SQLGetValue("内容")
既然使用SqlGetValue,就不要设置为二进制列,设置为字符列。 |
|
-- 作者:lzzhx -- 发布时间:2015/7/5 15:17:00 -- 大红袍老师: 代码: cmd.CommandText = "Insert Into {内部通讯} ([发送者ID],[接收者ID],[发送时间],[内容],[文件]) Values (\'" cmd.CommandText = cmd.CommandText & _UserID & "\',\'"& xzyhbh & "\',#" & Date.Now & "#,\'" & ct1.RTF & "\',\'" & filename & "\')" 出错信息: 语法错误 (操作符丢失) 在查询表达式 \'\'[\\rtf1\\ansi\\ansicpg936\\deff0\\deflang1033\\deflangfe2052[\\fonttbl[\\f0\\fnil\\fcharset134 \\\'cb\\\'ce\\\'cc\\\'e5;]] [\\colortbl ;\\red255\\green0\\blue0;] \\viewkind4\\uc1\\pard\\cf1\\lang2052\\f0\\fs18 1414\\par ] \'\' 中。 改为 cmd.CommandText = cmd.CommandText & _UserID & "\',\'"& xzyhbh & "\',#" & Date.Now & "#,\'" & ct1.RTF.replace("\'", "\'\'") & "\',\'" & filename & "\')" 后,可以存储了,不再弹出错误信息,谢谢老师了。 但是读的时候,用 ct.text = dr.SQLGetValue("内容") 代码,读出的是字符串,并不是格式文本
|
|
-- 作者:大红袍 -- 发布时间:2015/7/5 15:21:00 -- 保存时候,看内容是什么 msgbox(ct1.RTF)
取出时候,msgbox(dr.SQLGetValue("内容")) 看内容是什么 |
|
-- 作者:lzzhx -- 发布时间:2015/7/5 15:23:00 -- 我试了两次,一次是一张图片,另一次是粘贴了excel的部分表,结果都一样 |
|
-- 作者:lzzhx -- 发布时间:2015/7/5 15:24:00 --
|