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

ADOQuery 新增 和 使用變數 等問題

尚未結案
Joery
一般會員


發表:16
回覆:16
積分:6
註冊:2004-12-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-04-04 21:49:03 IP:211.74.xxx.xxx 未訂閱
doQuery->Close(); adoQuery->SQL->Clear(); String str; str="Insert Into ConterN Values(" tstyy "," tstmm "," tstdd "," tsthro "," sum ")"; adoQuery->SQL->Add(str); adoQuery->Prepared; adoQuery->ExecSQL(); 在新增一筆資料到資料庫時 , 都會有錯了 像我之前有另一個這樣寫就ok 但在這裡把字串和變數用 " "連接他說 invaild pointer addtion ....好奇怪哦 那我知道有另一個方法就是用 :變數 :tstyy 這樣也可以用但是 , 該如何指定變數呢 adoQuery->Parameters[0]=tstyy; [C Error] Child.cpp(181): E2285 Could not find a match for 'TParameters::operator =(int)' =.=???...........請各位高手們賜教 謝啦
wyndog
資深會員


發表:7
回覆:362
積分:348
註冊:2004-10-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-04-05 10:50:14 IP:61.62.xxx.xxx 未訂閱
你的 tstyy 是 int 吧 那當然不能用,要先用 IntToStr 轉成字串 像這樣: str="Insert Into ConterN Values(" IntToStr(tstyy) .....
Joery
一般會員


發表:16
回覆:16
積分:6
註冊:2004-12-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-04-05 12:44:13 IP:203.67.xxx.xxx 未訂閱
引言: 你的 tstyy 是 int 吧 那當然不能用,要先用 IntToStr 轉成字串 像這樣: str="Insert Into ConterN Values(" IntToStr(tstyy) .....
謝謝您問題已解決 不過我在資料庫裡的type是Integer 為什麼在這裡頭要用String?? 順道問個問題 如果是用 adoQuery 在SQL->Ad("select * From test where ID=:tstID") 像上面用變數 :ID 在coding時該如何指定值呢 adoQuery->Paramaters[0]=tstID; 有錯耶用paramaterbyname("ID")=tstID; 還是有錯 我手上有好幾本書都有講到Query的用法 但至於 ADOQuery 則都沒講耶 奇怪了 前輩能回答一下嗎 謝謝 ^_______^
wyndog
資深會員


發表:7
回覆:362
積分:348
註冊:2004-10-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-04-06 14:09:00 IP:60.248.xxx.xxx 未訂閱
1. 雖然你的欄位 Type 是 Integer 不過 Query 是 string,要把值填到 Query 去,當然就要轉成 string 2. 如果你的 tstID 是固定要用的 就在 ADOQuery1 的屬性裡,Parameters新增一個 tstID 並把它的 type 設成 integer 以後就用 ADOQuery1->Parameters->ParamValues["tstID"] = 123; 就可以設定參數的值了
系統時間:2024-04-30 3:57:40
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!