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

ADOQuery的open及execsql有共通的查詢方式嗎?

尚未結案
junlin
初階會員


發表:66
回覆:94
積分:42
註冊:2002-03-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-08-01 11:08:00 IP:220.130.xxx.xxx 訂閱
抓資料時用adoquery.open
run sql時用adoquery.execSQL
我曾經想要去判斷user所輸入的SQL是否包含某個關鍵字, 但這種方法好像容易遺漏部分狀況......
如果adoquery的SQL語法是由使用者動態輸入的, 那有共通的執行指令嗎?
不管使用者輸入什麼SQL, 我都是用相同的指令去run, 然後再判斷所回傳的是recordset還是訊息,
再決定要用dbgrid或memo去呈現

adoquery有辦法可以做到這樣嗎?
還是要用其他元件呢?
junlin
初階會員


發表:66
回覆:94
積分:42
註冊:2002-03-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-08-01 15:07:07 IP:220.130.xxx.xxx 訂閱
我現在是用adocommand去做(如下), 不知道有沒有更好的作法?

[code delphi]
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
a:_recordset;
begin
adocommand1.CommandText := memo1.Lines.Text;
a:=adocommand1.Execute(i,'');
if i=-1 then adodataset1.recordset := a; //-1表示有回傳recordset
end;

[/code]
系統時間:2024-03-28 18:30:44
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!