总出现“ora-00093:sql命令未正确结束"的错误!

「已注销」 2005-09-16 01:33:27
程序如下:
qryTmp.Close;
qryTmp.SQL.Clear;
qryTmp.SQL.Add('insert into sale_plan(dept_no,plan_date)');
qryTmp.SQL.Add(' select dept_no,'+tmpDate+' as plan_date from dept where upper_dept_no='+tmpDeptNo+' and dept_type<>2 ');
qryTmp.ExecSQL;


生成的sql在PL/SQL Developer中运行无误,可是在delphi中就老报这个错误,我是adoquery直接访问的oracle8,不知道是否是ado控件的问题?请各位高手指点迷津!

表sale_plan中dept_no和plan_date是关键字索引
...全文
307 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2005-09-16
  • 打赏
  • 举报
回复
up一下!
「已注销」 2005-09-16
  • 打赏
  • 举报
回复
我曾经是先写到字符串strSql中,即strSql:='insert into sale_plan(dept_no,plan_date) select dept_no,'+tmpDate+' as plan_date from dept where upper_dept_no='+tmpDeptNo+' and dept_type<>2 ';也不行的。
没有什么怪字符的。
两个变量是这样负值的:
tmpDate:=''2005-08-31'',tmpDeptNo:='1073'
g961681 2005-09-16
  • 打赏
  • 举报
回复
你的tmpDate是什么值?
还有,你最后的sql中有没有什么怪字符什么的。
记得我原先遇到一次,“`”符号不能出现在“:”后面,那怕是在字符串,做update都更新不进去。
但是在pl/sql中能执行。
abc3000 2005-09-16
  • 打赏
  • 举报
回复
应该和控件没有关系啊
ckc 2005-09-16
  • 打赏
  • 举报
回复
你把你的'insert into sale_plan(dept_no,plan_date)'和' select dept_no,'+tmpDate+' as plan_date from dept where upper_dept_no='+tmpDeptNo+' and dept_type<>2 '放到一个变量里,输出来看看也许就知道错误了
还不知道的话就把这个输出结果放到plsql中运行一下看有没有错误
「已注销」 2005-09-16
  • 打赏
  • 举报
回复
换了一个command就好用了,郁闷。到底是什么问题呢?

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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