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

請教一個關於選擇型查詢的做法

答題得分者是:cashxin2002
BIG-ROM
初階會員


發表:94
回覆:91
積分:37
註冊:2005-04-16

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-05-18 05:42:22 IP:195.55.xxx.xxx 未訂閱
請教一個關於選擇型查詢的做法    各位你們好!   請問哪位高手寫過數字和字符的查詢?      用戶通過ComboBox確定字段類型(第一個字段是數字型,第二個字段是中文和數字)後再在Edit1輸入條件,點擊Button後進行查詢。      具體請高手貼出第二選擇的查詢部分可以嗎?謝謝!    'select * from [INVOICE] WHERE CntrNo ='+trim(edit1.Text)+' order by INID Desc'    //****** CntrNo 為文本類型    寫程序——新問題會接踵而來!
Arlung Miao
初階會員


發表:9
回覆:44
積分:25
註冊:2004-08-25

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-05-18 08:41:20 IP:61.235.xxx.xxx 未訂閱
朋友,好難看懂你提的問題。
pcboy
版主


發表:177
回覆:1838
積分:1463
註冊:2004-01-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-05-18 08:42:27 IP:210.69.xxx.xxx 未訂閱
> 字段類型(第一個字段是數字型,第二個字段是中文和數字) 聽不懂, 什麼叫做 "字段" (大陸用語?) > 第二選擇的查詢部分 聽不懂 ********************* 如果您滿意答案,請結案 *********************
------
能力不足,求助於人;有能力時,幫幫別人;如果您滿意答覆,請適時結案!

子曰:問有三種,不懂則問,雖懂有疑則問,雖懂而想知更多則問!
Arlung Miao
初階會員


發表:9
回覆:44
積分:25
註冊:2004-08-25

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-05-18 08:58:13 IP:61.235.xxx.xxx 未訂閱
<字段>就是<欄位>的意思
cashxin2002
版主


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

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-05-18 09:09:58 IP:202.62.xxx.xxx 未訂閱
您好﹗    字段就是欄位的意思﹒ 一般來講﹐我們可以使用Param的方法配合ComboBox選擇的值來賦值給SQL﹐以下以BDE\Query舉例﹕
begin
  Query1.Close;
  Query1.SQL.Clear;
  Query1.SQL.Add(''select * from [INVOICE] WHERE CntrNo = :Temp order by INID Desc');
  if ComboBox1.Text = '數字型字段名稱' then
    Query1.ParamByName('Temp').Value := IntToStr(Edit1.Text)//如果字段是實數形態﹐可換用FloatToStr(Edit1.Text);
  else
  if ComboBox1.Text = '中文和數字字段名稱' then
    Query1.ParamByName('Temp').Value := Edit1.Text
  else
  if ComboBox1.Text = '' then
    begin
      ShowMessage('請先選擇字段名稱');
      Abort;
    end;
  Query1.Open;
end;
如果是使用ADO存取﹐請在以上ParamByName屬性處換用ADO\SQL資料集元件的Parameters.ParamByName屬性方法賦值﹐如下﹕ ADOQuery1.Parameters.ParamByName('Temp').Value := Edit1.Text ================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟
BIG-ROM
初階會員


發表:94
回覆:91
積分:37
註冊:2005-04-16

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-05-19 04:33:24 IP:61.145.xxx.xxx 未訂閱
藥到病除,感謝您無私的分享! 問題解決了。        
引言: 您好﹗ 字段就是欄位的意思﹒ 一般來講﹐我們可以使用Param的方法配合ComboBox選擇的值來賦值給SQL﹐以下以BDE\Query舉例﹕
begin
  Query1.Close;
  Query1.SQL.Clear;
  Query1.SQL.Add(''select * from [INVOICE] WHERE CntrNo = :Temp order by INID Desc');
  if ComboBox1.Text = '數字型字段名稱' then
    Query1.ParamByName('Temp').Value := IntToStr(Edit1.Text)//如果字段是實數形態﹐可換用FloatToStr(Edit1.Text);
  else
  if ComboBox1.Text = '中文和數字字段名稱' then
    Query1.ParamByName('Temp').Value := Edit1.Text
  else
  if ComboBox1.Text = '' then
    begin
      ShowMessage('請先選擇字段名稱');
      Abort;
    end;
  Query1.Open;
end;
如果是使用ADO存取﹐請在以上ParamByName屬性處換用ADO\SQL資料集元件的Parameters.ParamByName屬性方法賦值﹐如下﹕ ADOQuery1.Parameters.ParamByName('Temp').Value := Edit1.Text ================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
寫程序——新問題會接踵而來!
系統時間:2024-06-30 23:33:30
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!