oracle字符串带小括号问题

zzn007 2013-12-09 03:36:59
是用adoQuery控件,执行语句:

insert into I36705C99EB69ADDB (DTDOCID,PARTID,PAGEID,SIDEFLAG,COLOR,IMAGETYPE,FILENAME,PASSWORD,GUID) values ('119630','1','1','F','0','99','A~5C`D68E6[)9FZUD[H38NW.jpg','','e:/upload/0/0/0/J/G/316710300_CA732C6845D565FDC5A34E79F66E55ED7777')

报错:
第3行: ORA-01756: 引号内的字符串没有正确结束!

应该是字符串中有‘)‘的问题,但是如何处理呢?单引号的问题可以使用QuotedStr()方法,在oracle中’)‘,怎么处理?才能完整通过?

...全文
440 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sololie 2013-12-09
  • 打赏
  • 举报
回复
看看这样拼出来的对不对


var
sql: string;
begin
sql := 'insert into I36705C99EB69ADDB(DTDOCID, PARTID, PAGEID, SIDEFLAG, COLOR,'
+ 'IMAGETYPE, FILENAME, PASSWORD, GUID)values(''119630'',''1'',''1'',''F'',''0'',''99'','
+ '''' + 'A~5C`D68E6[)9FZUD[H38NW.jpg' + ''','''','
+ '''e:/upload/0/0/0/J/G/316710300_CA732C6845D565FDC5A34E79F66E55ED7777''';
zbdzjx 2013-12-09
  • 打赏
  • 举报
回复
网上搜一下“oracle 转义字符”
zzn007 2013-12-09
  • 打赏
  • 举报
回复
不是有单引号的问题,应该是是字符串中有“右小括号”的问题,应该就是字符串中: 'A~5C`D68E6[)9FZUD[H38NW.jpg' 中有 ) 造成的
sololie 2013-12-09
  • 打赏
  • 举报
回复
每个应该是 ' 单引号的地方用 '' 两个单引号

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧