问一个关于SQL SERVER的“菜”问题。(100分)

  • 主题发起人 主题发起人 foxnt
  • 开始时间 开始时间
F

foxnt

Unregistered / Unconfirmed
GUEST, unregistred user!
用QUERY查询SQL SERVER7 时,用"select * from xxx"语句
很正常。但一加条件时,如:
query.sql.add('select * from xxx where aa='+'"'+edit1.text+'"');
query.open;
就报错。
后发现将requestlive改为TRUE时,就正常了。但再用如下语句:
query.sql.add('insert into xxx set aa=..... where bb=.....')
query.execsql
就又报错,说什么字段名不正确,可我并没打错啊。
请哪位高手给个详细的DEMO吧。谢了!
 
注意字符串的连接
 
这样写呢:
query.sql.add('select * from xxx where aa='''+edit1.text+'''');
要注意在字符串是单引号的写法;
如:EDIT.text:='''';而Edit中显示的是一个单引号。

query.open;是返回值的执行过程。
query.execsql是不返回值的执行过程。
 
'insert into xxx set aa=..... where bb=.....????

insert into XXX (,,) values(,,)

update XXX set ...
 
使用参数的方法:
sql.add('select * from db where a=:t1');
params[0].value:=x;
open;
 
SELECT语句的错误在于单引号的用法上有错。
INSERT语句的错误是很明显的语法错误,我同意程云和hi_liuyang的观点。
 
接受答案了.
 
后退
顶部