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

請教關於database desktop 的SQL查詢................

尚未結案
wilence
一般會員


發表:22
回覆:23
積分:9
註冊:2004-05-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-07-28 21:37:05 IP:140.124.xxx.xxx 未訂閱
各位好~~    想請問一下若Query元件,把sql語法寫死在裡面.結果一定跑的出來    若我想動態的更變我想要的查詢,把sql的source code 寫在程式上面,如下    已先做好一個內建資料庫,檔名為work.dbf       char query[100];   Query1->Close();   Query1->SQL->Clear();   sprintf(query,"SELECT * FROM D:\test\work.dbf ORDER BY NUM ASC");   Query1->SQL->Add(query);   Query1->Open();    錯誤訊息顯示為, Invalid the use of keyword...    謝謝各位的回答..  
folkchen
高階會員


發表:9
回覆:232
積分:173
註冊:2003-10-09

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-07-29 08:43:43 IP:211.20.xxx.xxx 未訂閱
char query[100]; | V AnsiString query; sprintf(query,"SELECT * FROM D:\test\work.dbf ORDER BY NUM ASC"); | V query = "SELECT * FROM D:\test\work.dbf ORDER BY NUM ASC"); 試試看
wilence
一般會員


發表:22
回覆:23
積分:9
註冊:2004-05-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-07-29 13:04:21 IP:140.124.xxx.xxx 未訂閱
您好: 錯誤訊息顯示變成對query兩次定義-> "Multiple declaration for query" "Can't convert AnsiString to char" 情況大致是醬..
folkchen
高階會員


發表:9
回覆:232
積分:173
註冊:2003-10-09

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-07-29 15:44:41 IP:211.20.xxx.xxx 未訂閱
我的程式都是用下面的方式做的,一向沒有問題 你試試看 若還是有問題,就要查其他的設定了 AnsiString query; query="Select .... "; Query1->Close(); Query1->SQL->Clear(); Query1->SQL->Add(query); Query1->Active = true;
wilence
一般會員


發表:22
回覆:23
積分:9
註冊:2004-05-19

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-07-29 16:01:59 IP:140.124.xxx.xxx 未訂閱
您好:    顯示錯誤訊息和一開始一樣 -> "Invalid use of keyword."    之前使用的資料庫是Oracle,若寫法是醬子,結果一定可以顯示出來    只是這次我想用內建的database desktop,想即時的清除、更新,    而非寫死在物件檢示器上面的SQL屬性…    請問一下,您的寫法是針對bcb裡內建的database嗎?    還是…有其它方法可以解決的。                                                         謝謝您的回答  
folkchen
高階會員


發表:9
回覆:232
積分:173
註冊:2003-10-09

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-07-29 17:28:10 IP:211.20.xxx.xxx 未訂閱
阿~~ 我用的也是 ORACLE 那.... 我就幫不上忙了
wilence
一般會員


發表:22
回覆:23
積分:9
註冊:2004-05-19

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-07-29 22:01:44 IP:140.124.xxx.xxx 未訂閱
沒關係    我不知是否元件設定問題,我是使用Database和Query這兩個元件,    Query和Database之間的連結是有設好,但在Query時要設定Active->true時    若我是動態地寫在程式上,而非寫死在Query的sql屬性上則會情況出現如下    會出現以下訊息 介面如下 任意選擇kw 或kwh ,之後按確定 大概是醬的情況..小弟不才..麻煩各位指教
timhuang
尊榮會員


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

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-08-01 21:32:58 IP:61.62.xxx.xxx 未訂閱
Hi, 看起來是關鍵字 \ 的錯誤啦, 修改一下應該就可以用囉, AnsiString query; query = "SELECT * FROM D:\\test\\work.dbf ORDER BY NUM ASC";
wilence
一般會員


發表:22
回覆:23
積分:9
註冊:2004-05-19

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-08-02 11:58:45 IP:140.124.xxx.xxx 未訂閱
您好..    的確為關鍵字問題..前幾天我試著在所選擇的databse上加個引號..如    Query1->SQL->Add("SELECT * FROM 'work.db'");    即可..而在Query1上的DatabaseName屬性上設定database的路徑    即 D:\test 就一切ok啦...^^    感謝各位的回答   
系統時間:2024-05-04 23:56:46
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!