sql语句中参数如何传递(具体语法)(10分)

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

friendship

Unregistered / Unconfirmed
GUEST, unregistred user!
query1.SQL.Clear ;
query1.sql.add('select * from 房产清单 where 房号=a1 and 序号=a2 order by 房号+编者按号');
其中a1,a2是变量,请教具体写法, 多谢!
 
>>query1.sql.add('select * from 房产清单 where 房号=a1 and 序号=a2 order by 房号+编者按号');
query1.sql.add('select * from 房产清单 where 房号=:a1 and 序号=:a2 order by 房号,编者按号');
query1.parambyName('a1').value:=a1;
query1.parambyName('a2').value:=a2;
query1.open;

 
我是用它和dbgrid一起作用的,没有query1.open也会自动刷新吗?
 
最好是在query1.sql.add(.......)中能直接体现的那种,就象其它语言中的select * from 房产数据 where 房号='"& a1 &"' order by 编号
 
>>query1.sql.add('select * from 房产清单 where 房号='''+edit1.text+'''and 序号='''edit2.text''' order by 房号+编者按号');
 
小苹果:
我比较笨,请再写清楚点
 
var sqlstr:string;
begin
sqlstr:='select * from 房产清单 where 房号=''';
sqlstr:=sqlstr+ edit1.text+''' and 序号='''+edit2.text+''';
With Query1 do
begin
close;
sql.clear;
sql.add(sqlstr);
open;
end;
end;
 
同意happyloner
 
query1.sql.add('select * from 房产清单 where 房号='''+edit1.text+'''and 序号='''+edit2.text+''' order by 房号+编者按号');
要注意两点:1.edit1.text和edit2.text前后要用加号,且用三个单引号括起来。
2.在form上用两个编辑框来取得参数值。
 
哈哈,,上面的兄弟:九月飞鹰已经回答罗。
 
同意楼上几位。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部