这个SQL语句为何在BCB里要出错?

xrfei 2003-06-11 09:40:16
开发环境:BCB6.0 + ORACLE 8.1.6
出错描述:
有一如下SQL语句:
insert into user_message values('10','023','13012345678','`',to_date('2003-03-25','yyyy-mm-dd'),'',:in_id)

如果直接用ORACLE的PL/SQL Dev运行该SQL语句,如:insert into user_message values('10','023','13012345678','`',to_date('2003-03-25','yyyy-mm-dd'),'',1),能正常执行;
但是,在BCB6的程序中,用一Query来执行该语名,就会报错;后经发现,出错的地方在于插入值的第四项的值是一个“`”符号。这个符号就是键盘上Tab键上面的那个键的字符,请问这是怎么一回事?
...全文
38 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xrfei 2003-06-14
  • 打赏
  • 举报
回复
谢谢各位热心朋友!结贴!
nanhui 2003-06-11
  • 打赏
  • 举报
回复
哦!原来是TAB上面的
奇怪!
我这里怎么没有这个问题
可以正常插入啊

我倒惯怀疑那个是“单引号”
nanhui 2003-06-11
  • 打赏
  • 举报
回复
Table鍵是这样的吗?
我不以为是单引号
加转义字符应该是可以的吧
我试一下
极速小王子 2003-06-11
  • 打赏
  • 举报
回复
C language do not has \` but \'
Lewolf 2003-06-11
  • 打赏
  • 举报
回复
To:
xrfei(相如飞)
你不会是在代码中生成的SQL吧!给“`”前面加一个“\”试试,可能是C语言中转义字符在作怪。
我刚作了一个测试

Label1->Caption = “ce`shi”;
Label2->Caption = “ce\`shi”;

结果两个Caption的结果是一样的。
极速小王子 2003-06-11
  • 打赏
  • 举报
回复
不知道,你可以使用参数,具体方法我也没试过,你可以到数据库栏目里问问!!!!
xrfei 2003-06-11
  • 打赏
  • 举报
回复
现在的情况是,把“`”字符换成其它字符,在BCB中就不会报错了,请问,这个“`”字符为什么会导致错误?这个符号就是键盘上Tab键上面的那个键的字符。
极速小王子 2003-06-11
  • 打赏
  • 举报
回复
ADOQuery->Execute () ;
具体的函数名字我不太记得,反正在系统给出提示后按ex就会跳到该函数处
极速小王子 2003-06-11
  • 打赏
  • 举报
回复
query会返回结果
try to use execute ()
nobill 2003-06-11
  • 打赏
  • 举报
回复
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add("sql语句");
Query1->ExecSQL();
yingyys 2003-06-11
  • 打赏
  • 举报
回复
你可以使用ParaByName 来传递参数

13,871

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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