全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1279
推到 Plurk!
推到 Facebook!

請問大大 如何將edit的值丟入query中作判斷!!

尚未結案
suzukiyamaru
一般會員


發表:18
回覆:8
積分:5
註冊:2003-06-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-11-25 23:02:15 IP:218.160.xxx.xxx 未訂閱
請問一下大大我想把我edit使用者輸入的值丟入query做判斷時該如何寫呢!! 我的程式碼是 procedure TForm1.Button1Click(Sender: TObject); begin query1.Close; query1.SQL.Clear; query1.SQL.Add('select 廠商名稱 from 平織生產指示單 where 訂單編號="eidt1.text"'); query1.Open; end; end. 當我執行時他會跑出這樣的錯誤 project Project.exe raised exception class EDBEngineError with message'General SQL error.[Micorsoft][ODBC Microsoft Access Driver]參數太少, 預期個數1='.Process stopped.Use Step or Run to continue 這樣的錯誤訊息 在問一個問題要是我想把多個欄位所搜尋出的質丟到dbgrid時能在同一個欄位是否如下的SQL語法: query1.SQL.Add('select 織廠,染廠,刷毛廠 as廠商名稱 from 平織生產指示單 where 訂單編號="eidt1.text"'); 請大大幫忙~專題剩這個問題就完成了!!
yandav
一般會員


發表:16
回覆:20
積分:7
註冊:2002-10-05

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-11-25 23:15:56 IP:210.200.xxx.xxx 未訂閱
將 query1.SQL.Add('select 廠商名稱 from 平織生產指示單 where 訂單編號="eidt1.text"'); 改為 query1.SQL.Text:='select 廠商名稱 from 平織生產指示單 where 訂單編號=' '''' eidt1.text ''''; 試試看
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-11-25 23:22:27 IP:61.62.xxx.xxx 未訂閱
除了 yandav兄的建議外, 也可以使用 QuotedStr 這個 function 如: query1.SQL.Add('select 廠商名稱 from 平織生產指示單 where 訂單編號=' QuotedStr(Edit1.Text)); 重點就是要使 SQL.Text 的內容寫為: select 廠商名稱 from 平織生產指示單 where 訂單編號='xxxx' 當然, 若是你的訂單編號是 edit1 中的值, 也就是 edit1.text , 在字串中若要使用單引號, 則必須重覆一次啦, 如同 yandav 兄的做法, 若要省事些, 可以用 QuotedStr function 來包也可以!
cashxin2002
版主


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-11-25 23:39:45 IP:63.84.xxx.xxx 未訂閱
您好!    有蠻多種方法可供選擇使用: 1.在SQL語法中組字串: Query1.SQL.Add('Select 廠商名稱 From 平織生產指示單 Where 訂單編號='''+Edit1.Text+'''');    2.使用Param提供Edit1.Text資料以供查詢: Query1.SQL.Add('Select 廠商名稱 From 平織生產指示單 Where 訂單編號=:Orderno'); Query1.ParamByName('Orderno').AsString := Edit1.Text;    關于您的第二個問題, 必須在SQL語法中使用+符號把欄位值加起來才可以: Query1.SQL.Add('select 織廠+染廠+刷毛廠 as廠商名稱 From 平織生產指示單 where 訂單編號='''+eidt1.text+'''');    參考看看!    ===================== 努力,相信會獲得美麗! 忻晟 發表人 - cashxin2002 於 2003/11/25 23:52:54
------
忻晟
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-11-26 09:42:48 IP:218.164.xxx.xxx 未訂閱
procedure TForm1.Button1Click(Sender: TObject);
begin
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('select 廠商名稱 from 平織生產指示單 where 訂單編號=' #39 eidt1.text #39);
query1.Open;
end;
end.
TRY TRY SEE
Miles
尊榮會員


發表:27
回覆:662
積分:622
註冊:2002-07-12

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-11-26 18:29:20 IP:218.160.xxx.xxx 未訂閱
Hi suzukiyamaru您好: 1.請先到Access點選[平織生產指示單]這個(我猜是查詢), 是否本身就少依各參數需輸入 2.query1.SQL.Add('select 織廠 染廠 刷毛廠 as 廠商名稱 from 平織生產指示單 where 訂單編號=''' eidt1.text '''''); 我不是高手, 高手是正在銀幕前微笑的人.
------


我不是高手, 高手是正在銀幕前微笑的人.
suzukiyamaru
一般會員


發表:18
回覆:8
積分:5
註冊:2003-06-09

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-11-26 22:37:53 IP:218.160.xxx.xxx 未訂閱
謝謝你們各位大大程式已經可以動了! 但針對第2個問題還是有一個小問題 當我寫成 Query1.SQL.Add('select 織廠 染廠 刷毛廠 as廠商名稱 From 平織生產指示單 where 訂單編號=''' eidt1.text ''''); 他會把搜尋到的廠商全部只寫在一個欄位理面也 也就是當dbgrid中會顯示一筆~但在那一筆資料中有我搜尋到的所有資料 那我該如如把每一筆分配到下一筆攔位中呢
cashxin2002
版主


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

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-11-27 09:12:26 IP:63.84.xxx.xxx 未訂閱
您好﹗    您的目的不就是﹕想把多個欄位所搜尋出的質丟到dbgrid時能在同一個欄位﹐還是小弟將您的問題理解錯了﹒能否描述得清楚一些呢﹖ <><>===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-11-27 12:03:51 IP:203.95.xxx.xxx 未訂閱
Hi, 那是不是要這個呢?    
query1.Close;
query1.SQL.Clear;
Query1.SQL.Add('select 織廠 as廠商名稱 From 平織生產指示單 where 訂單編號='''+eidt1.text+'''');
Query1.SQL.Add('union select 染廠 as廠商名稱 From 平織生產指示單 where 訂單編號='''+eidt1.text+'''');
Query1.SQL.Add('union select 刷毛廠 as廠商名稱 From 平織生產指示單 where 訂單編號='''+eidt1.text+'''');
query1.Open;
這樣的結果呢? 也就是原來的是 '織A染A刷A' 一筆, 要變為: '織A' '染A '刷A' 三筆......
Miles
尊榮會員


發表:27
回覆:662
積分:622
註冊:2002-07-12

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-11-27 14:06:40 IP:218.160.xxx.xxx 未訂閱
Hi suzukiyamaru: 先釐清一下問題, 請問你說的一筆是指這樣嗎
1.
廠商名稱<--欄位名稱
結果一
結果二
結果三
這種結果應該是指三筆, 還是指不是這種結果 我不是高手, 高手是正在銀幕前微笑的人.
------


我不是高手, 高手是正在銀幕前微笑的人.
suzukiyamaru
一般會員


發表:18
回覆:8
積分:5
註冊:2003-06-09

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-11-28 00:31:26 IP:218.160.xxx.xxx 未訂閱
timhuang 還有各為熱心的大大謝謝你啊~~終於可以動了^^這禮拜三就要專題發表了!!緊張唷
系統時間:2024-06-02 17:48:19
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!