查询表里字段1的值是edit1.text或字段2的值是edit2.text
我这样写什么地方错了吗?
temp_sql:='select * from disk where (disk_name=:edit1.text or disk_code=:edit2.text)';
adoquery1.Close;
adoquery1.SQL.Add(temp_sql);
adoquery1.Parameters[0].Value:=trim(edit1.text);
adoquery1.Parameters[1].Value:=trim(edit2.text);
adoquery1.Open;
我这样写什么地方错了吗?
temp_sql:='select * from disk where (disk_name=:edit1.text or disk_code=:edit2.text)';
adoquery1.Close;
adoquery1.SQL.Add(temp_sql);
adoquery1.Parameters[0].Value:=trim(edit1.text);
adoquery1.Parameters[1].Value:=trim(edit2.text);
adoquery1.Open;
解决方案 »
- 请问uThreadPool.pas这个线程池如何调用呢?
- 200分只给一个人,是Delphi流操作比较慢吗?为何通过流然后绘制到Image上闪动比较厉害。求老大帮忙!!!!!!!!!
- 哈哈哈,這貼是我在用linux上網留的啊
- 急!线程问题!
- 续高分无人解决问题!!!!!!!!!!!! 高手快进,解决后送300
- 超难问题!!!!!!!!!!!!!!!!!!!!!!!!!!在线等待,解决就结分
- 大家来帮小弟,急呀。
- 关于邮件链接问题(高手)
- 这个问题搞不清楚我不爽!!
- delphi 如何实现程序的自动重启
- 欢迎做界面的高手进来讨论一下!如何把Delphi开发的界面做成仿XP界面?来者有分
- 请问哪里有ppp协议的delphi原码下载
with ADOQuery1 do
begin
close;
sql.Clear;
sql.Add('select * from supp where job_id=:ss');
Parameters[0].Value:=100046;//0 对应的就是ss
active :=true;
end;
你需要加两个
adoquery1.Close;
adoquery1.SQL.Add(temp_sql);
adoquery1.Parameters[0].Value:=trim(edit1.text);
adoquery1.Parameters[1].Value:=trim(edit1.text);
adoquery1.Parameters[0].Value:=trim(edit2.text);
adoquery1.Parameters[1].Value:=trim(edit2.text); adoquery1.Open;
adoquery1.Close;
adoquery1.SQL.Add(temp_sql);
adoquery1.Parameters[0].Value:=trim(edit1.text);
adoquery1.Parameters[1].Value:=trim(edit1.text);
adoquery1.Parameters[2].Value:=trim(edit2.text);
adoquery1.Parameters[3].Value:=trim(edit2.text); adoquery1.Open;
adoquery1.SQL.Add(temp_sql);
adoquery1.Parameters[0].Value:=trim(edit1.text);
adoquery1.Parameters[1].Value:=trim(edit2.text);
adoquery1.Open;
这一句是必须是有两个参数,而你上面一句
temp_sql:='select * from disk where (disk_name=:edit1.text or disk_code=:edit2.text)';
是or时有可能是一个参数,这样就会有这种错误,请用IF语句判断才可以