我已经用了一个ADOQuery、datasource、DBGrid连接数据库显示了两张表(A、B)的所有内容,其中还有计算出的字段。
我现在想要在另一个窗体显示这两张表的某些记录,能不能仍然用这三个控件?
表A 表B
NO NAME a b c
1 li 1 SH 28
2 zhang 2 NJ 32
3 wang 3 BJ 35
我前面的SQL语句是:
Select A.*,B.b,B.c
from A,B
where A.NO=B.a
现在新的窗体上有一个EDIT控件用来查询的。现在我想根据Edit查询,Edit的作用是输入NO号我显示相应记录。我该怎么写?长了点,麻烦大家了!谢谢先
我现在想要在另一个窗体显示这两张表的某些记录,能不能仍然用这三个控件?
表A 表B
NO NAME a b c
1 li 1 SH 28
2 zhang 2 NJ 32
3 wang 3 BJ 35
我前面的SQL语句是:
Select A.*,B.b,B.c
from A,B
where A.NO=B.a
现在新的窗体上有一个EDIT控件用来查询的。现在我想根据Edit查询,Edit的作用是输入NO号我显示相应记录。我该怎么写?长了点,麻烦大家了!谢谢先
解决方案 »
- delphi制作的一个cgi类型的webservices如何发布?在线等!
- 导入Excel的问题
- 我们县医院即将更新信息系统,如有意者,请跟贴!我们在线
- 出售全套 RSS 浏览器程序(包括全部功能,产品)
- AdjustTokenPrivileges()函数怎么用?如何让SE_SHUTDOWN_NAME成为enable
- 如何將image 中的圖片保存到桌面型數據庫中對應的字段﹗
- 斑竹:精华版的“交流学习: 网络函数大公开”怎么打不开
- 再续文本文档
- 真的很着急,DATASET向XML转换的问题。
- 请问大家哪里有signcode.exe下?请告诉我具体的url谢谢了
- 请大家讨论以下开发中是如何进行错误处理的,进者有分!
- 好消息,进来有分。
query1.sql.add('Select A.*,B.b,B.c from A,B where A.NO=B.a and A.No = ''' + edit1.text +'''');
2 用filter
query1.filtered:=false;
query1.filter:= 'N0 = ' + edit1.text;
query1.filtered:=true;
我写了 ADOQuery.Locate('no',strtoint(trim(Edit.Text)),[])怎么没有反应啊?
我在新窗体里也用了一个DBGRID,我已经按 esu(ESU)的说法 uses 我的单元文件名,
并且把DBGRID的DATASOURCE指向了那个单元的DATASOURCE,但是结果是新窗体的DBGRID里显示了所有记录,并没有起到查询的效果。
是不是因为我没有把ADOQUERY CLOSE 啊?
begin
close;
sql.clear;
sql.Add('Select A.*,B.b,B.c from A,B');
sql.Add('where (A.NO=B.a) and (A.No=veryNO)');
unprepare;
parambyname('veryNO').AsString:=Edit1.text;
prepare;
open;
end;
parambyname('veryNO').AsInteger:=strtoint(Edit1.text);
利用参数来传递值
with adoquery1 do
beign
close;
sql.clear;
sql.add('select * from www where No=:No');
parameters.items[0].datatype:=ftinteger;
parameters.items[0].value:=strtoint(edit1.text);
open;
....
end;
问题还没有解决,没有parambyname这个属性,而且parambyname不支持asstring。不过还是谢谢大家!
parameters.parambyname('field').asstring才行