線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1968
推到 Plurk!
推到 Facebook!

由使用者選擇的動態多條件查詢

答題得分者是:cashxin2002
g9221712
高階會員


發表:145
回覆:344
積分:162
註冊:2006-07-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-07-14 14:03:45 IP:220.134.xxx.xxx 訂閱

請問各位前輩:

我欲在一個ADO QUERY 下達SQL條件,目前是代入特定查詢參數,但是查詢參數是固定的,也就是沒代入值會產生錯誤,如何在按下查詢按鈕,自己代入使用者查詢的條件呢? 因為使用者不會每個條件都輸入,但有時又需要多個條件做查詢,所以查詢的條件是不固定的,我目前是在表單上拉了多個TEXTBOX讓使用者自行輸入查詢條件,

如單據號碼、單據日期起、單據日期迄、客戶編號、商品名稱,若想達到使用者輸入什麼條件就查單一或特定條件,其餘未輸入條件則忽略,要怎麼樣實作呢? 在ACCESS我是用判斷的,SQL_CON=SQLCON XXXX 判別條件有無將查詢條件加入,但是由於DELPHI中需要代入參數,動態參數則不知道怎麼達成?

能否提供一些意見或範例!萬分感謝!

------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」
程式寫的越久,卻發現自己越來越不會寫程式!
cubi
初階會員


發表:56
回覆:94
積分:35
註冊:2002-04-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-07-14 14:21:31 IP:203.187.xxx.xxx 未訂閱

Edit1 => 單據號碼
Edit2 => 單據日期起
Edit3 => 單據日期迄
if Trim(Edit1.Text) <> '' then
SQL_CON = SQL_CON Format('AND 單據號碼='%s', Edit1.Text) #13;
if Trim(Edit2.Text) <> '' then
SQL_CON = SQL_CON Format('AND 單據日期起 >= '%s', Edit2.Text) #13;
if Trim(Edit3.Text) <> '' then
SQL_CON = SQL_CON Format('AND 單據日期迄 <= '%s', Edit3.Text) #13;
===================引 用 文 章===================

請問各位前輩:

我欲在一個ADO QUERY 下達SQL條件,目前是代入特定查詢參數,但是查詢參數是固定的,也就是沒代入值會產生錯誤,如何在按下查詢按鈕,自己代入使用者查詢的條件呢? 因為使用者不會每個條件都輸入,但有時又需要多個條件做查詢,所以查詢的條件是不固定的,我目前是在表單上拉了多個TEXTBOX讓使用者自行輸入查詢條件,

如單據號碼、單據日期起、單據日期迄、客戶編號、商品名稱,若想達到使用者輸入什麼條件就查單一或特定條件,其餘未輸入條件則忽略,要怎麼樣實作呢? 在ACCESS我是用判斷的,SQL_CON=SQLCON XXXX 判別條件有無將查詢條件加入,但是由於DELPHI中需要代入參數,動態參數則不知道怎麼達成?

能否提供一些意見或範例!萬分感謝!

g9221712
高階會員


發表:145
回覆:344
積分:162
註冊:2006-07-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2006-07-14 19:02:38 IP:220.134.xxx.xxx 訂閱

因為我是使用如下方式

self.qry1.Active := False;
Self.qry1.Parameters.AddParameter.Name := 'SDATE';
Self.qry1.Parameters.ParamByName('SDATE').DataType := ftDateTime;
Self.qry1.Parameters.ParamByName('SDATE').Value := '2006/3/16';
self.qry1.Active := True;

不知如何代入動態參數?

------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」
程式寫的越久,卻發現自己越來越不會寫程式!
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2006-07-15 09:20:19 IP:202.62.xxx.xxx 未訂閱

您好﹗

相同的﹐您的程式中有對應SDATE的孌量﹐把這個變量賦給SDATE.Value就可以了﹒

------
忻晟
g9221712
高階會員


發表:145
回覆:344
積分:162
註冊:2006-07-06

發送簡訊給我
#5 引用回覆 回覆 發表時間:2006-07-16 13:00:51 IP:220.134.xxx.xxx 訂閱

謝謝!瞭解啦!

------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」
程式寫的越久,卻發現自己越來越不會寫程式!
系統時間:2024-05-19 4:50:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!