delphi数据库开发,动态sql,

delphi数据库开发,动态sql,selectodrbno,delno,pdctno,units,qtyu,delchar,indateFromppcchxxbwher... delphi数据库开发,动态sql,
select odrbno,delno,pdctno,units,qtyu,delchar,indate From ppcchxxb
where (delno like 'T%' or qtyu<0)
--and indate>='2010-10-01' and indate<='2010-11-02'
and pdctno like '%jm1%'

上面这段代码,我想通过点击窗体上的“查询”按钮,让结果显示在DBGrid1中,
(窗体中以加好DBGrid1,ADOQuery1,DataSource1,等)
“查询”按钮onclick应该怎么写:
像这样子的:
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.Sql.Add..................
ADOQuery1.Open;
展开
 我来答
邦浅魔千
2011-05-24 · TA获得超过220个赞
知道小有建树答主
回答量:209
采纳率:0%
帮助的人:355万
展开全部
var
tmpSql: string;
begin
tmpSql := 'select odrbno,delno,pdctno,units,qtyu,delchar,indate From ppcchxxb ' +
' where (delno like ''T%'' or qtyu<0) and indate>=''2010-10-01''' +
' and indate<=''2010-11-02'' and pdctno like ''%jm1%''';
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.Sql.Add(tmpSql)
ADOQuery1.Open;
end;
如果你里边的条件是动态的话,比如时间,则只需将里边的日期换成你选择的比如:
tmpSql := 'select odrbno,delno,pdctno,units,qtyu,delchar,indate From ppcchxxb ' +
' where (delno like ''T%'' or qtyu<0) and indate>=''' +
formatdatetime('yyyy-mm-dd', datetimepicker1.datetime) + '''' +
' and indate<=''2010-11-02'' and pdctno like ''%jm1%''';
更多追问追答
追问
var 
tmpSql: string;
///////////////////////////////为什么定义变量啊,不要定义变量可不可以?
追答
可以~~直接写ADOQuery1.Sql.Add( 'select odrbno,delno,pdctno,units,qtyu,delchar,indate From ppcchxxb ' +
' where (delno like ''T%'' or qtyu=''' +
formatdatetime('yyyy-mm-dd', datetimepicker1.datetime) + '''' +
' and indate<=''2010-11-02'' and pdctno like ''%jm1%''');
就可以了
神说早安
2011-05-24 · 超过33用户采纳过TA的回答
知道答主
回答量:111
采纳率:0%
帮助的人:96.7万
展开全部
adoquery1.sql.text := 'select odrbno,delno,pdctno,units,qtyu,delchar,indate From ppcchxxb
where (delno like '''+'T'+'%'' or qtyu<0)
--and indate>=''2010-10-01'' and indate<=''2010-11-02''
and pdctno like ''%'+'jm1'+'%''';
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式