QUERY组件中的sql语句??(88分)

  • 主题发起人 主题发起人 coffeexyz
  • 开始时间 开始时间
C

coffeexyz

Unregistered / Unconfirmed
GUEST, unregistred user!
在delphi4的query组件中,sql string 为:

insert into t1
(
a1,a2
)
select b1,b2
from b
运行提示select 为非法的关键字,难道query 连这样的 sql语句都不支持??
我的后台数据库为oracle8(通过bde相连),上述语句直接在数据库中运行正常,
万望大虾们指教!!!

 
insert into www3 (name,address) select * from www1;
我就是这样写的,在DELPHI中和SQL PLUS中都成功了。没事啊。
 
这样没错啊,虽然我是用paradox表做的试验。
 
你是不是用了query.open?
这里应该excutesql
 
我这里也没有问题呀!
 
同意千中元,用execsql不行,用open
 
coffeexyz兄也许是直接把Active属性设成true吧,象这类不需要服务器返回信息的
SQL语句应该用execsql来打开query组件
 
dedman 好像说反了吧,呵呵。
语法是对的,不过有的后台数据库 SQL 引擎不能随意回车换行,试着写成一行吧,
不要换行。
 
正确的语法应该是:
insert t1( a1,a2 )
select b1,b2 from b
 
midsql:='insert group_menucode values('''+curname+''','+
curlistitem.caption+','''+
datetostr(date)+''')';
groupsql.close;
groupsql.sql.clear;
groupsql.sql.add(midsql);
这是我插入数据库程序的一部分,可能你忘了引号。光是a1,a2什么的系统认为它为非法的
关键字。
 
TO All:
'''+curname+'''与'''+datetostr(date)+'''为何三重单引号括起来?
而'+curlistitem.caption+'只有单引号?请明示!
 
TO All:
'''+curname+'''与'''+datetostr(date)+'''为何三重单引号括起来?
而'+curlistitem.caption+'只有单引号?请明示!
 
'为引号或转义符。'''中,前两个代表'字符,后一个'才是真正的引号。
 
多人接受答案了。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部