我在查询事件中写道:
if dxdbpickedit3.text='订单帐号' then
begin
sqlstr:='select * from yudin where 订单帐号='+''''+edit1.text+'''';
with query1 do
begin
colose;
sql.clear;
sql.add(sqlstr);
open;
end;
end;
if dxdbpickedit3.text='联系人' then
.....
//在dbgird中显示结果,在dxdbpickedit中选择欲查询的项如‘订单帐号’,‘联系人’等。在edit1中输入欲查询的值。
程序编译能通过,但是查询结果没有变化。不知是哪的错?
if dxdbpickedit3.text='订单帐号' then
begin
sqlstr:='select * from yudin where 订单帐号='+''''+edit1.text+'''';
with query1 do
begin
colose;
sql.clear;
sql.add(sqlstr);
open;
end;
end;
if dxdbpickedit3.text='联系人' then
.....
//在dbgird中显示结果,在dxdbpickedit中选择欲查询的项如‘订单帐号’,‘联系人’等。在edit1中输入欲查询的值。
程序编译能通过,但是查询结果没有变化。不知是哪的错?
sqlstr:='select * from yudin where 订单帐号="'+edit1.text+'"';
是否应该为
sqlstr:='select * from yudin where 订单帐号='+''''+trim(edit1.text)+'''';
sqlstr:='select * from yudin where 订单帐号='+''''+edit1.text+'''';
sqlstr:='select * from yudin where 订单帐号='''+edit1.text+'''';
都是一样的,并没有错.
close;
sql.clear;
sql.text:='select * from yudin where 订单帐号=:aa';
parambyname('aa').asstring:=edit1.text;
open;
试一试,不知道行不行(我是个新手,如果错了请不要见笑)。