使用Query去Insert data 近MySQL時發生的問題 |
尚未結案
|
wen142
一般會員 發表:22 回覆:27 積分:14 註冊:2004-06-30 發送簡訊給我 |
各位大大你們好~~
首先,我使用的環境是BCB6.0+mySQL 我採用BDE的TQuery去做存取那因為第一次寫資料庫,所以也不清楚這樣的配對好不好,請各位大大給點意見。 此外我在Insert資料的時候出現下面的狀況
Query1->Close(); Query1->SQL->Clear(); Query1->SQL->Append("insert into test.testgogogo values "); Query1->SQL->Append("('Jack','P0001')");//只有name & ID欄位 Query1->ExecSQL(); Query1->Open() ;出現 Error Creating Cursor Handle...的警告... 改寫成 Query1->Append() ; Query1->FieldByName("Name")->AsString = Edit1->Text; Query1->FieldByName("ID")->AsString = Edit2->Text; Query1->Post() ;出現 Cannot modify a read-only dataset...的警告... 試問上列這些寫法是有問題的嗎??? 還是我在設定上有問題呢??? 基本上我希望可以使用SQL去做所有資料存取查詢的控制,請大大們建議一下 是否有更洽當的非感知元件可以來跟MySQL搭配 bcb新手上路 請多指教 |
Joery
一般會員 發表:16 回覆:16 積分:6 註冊:2004-12-13 發送簡訊給我 |
|
wen142
一般會員 發表:22 回覆:27 積分:14 註冊:2004-06-30 發送簡訊給我 |
引言: 我在書上看到的是用 Query->SQL->Add(); 改用試試看 然後SQL裡如果只新增部份欄位的話要把欄位名稱列出來 str="Insert Into test(Name,ID) Values(vlues_Name,vlues_ID)" 如果要執行的SQL不會回傳執像Insert, Update ,Delete之類只要用ExecSQL即可 無需再用Open()感謝Joery大大的回文~~ 其實您的方法我之前有測試過~~但是還是有其他的BUG只是我沒有記錄下來 基本上將Append改成Add的結果BUG是一樣的 至於ExecSQL因為我還不是很清楚要怎麼用,所以加在程式碼內TRY,但是前後所得到的BUG是一樣的~~^^ bcb新手上路 請多指教 |
wen142
一般會員 發表:22 回覆:27 積分:14 註冊:2004-06-30 發送簡訊給我 |
引言: 我在書上看到的是用 Query->SQL->Add(); 改用試試看 然後SQL裡如果只新增部份欄位的話要把欄位名稱列出來 str="Insert Into test(Name,ID) Values(vlues_Name,vlues_ID)" 如果要執行的SQL不會回傳執像Insert, Update ,Delete之類只要用ExecSQL即可 無需再用Open()Joery大大~~ 再次感謝您的回文,今天我實在不知道該怎麼辦,所以又將您的方法給再試一次,結果...... 電腦終於變聰明了..... 總算可以將資料輸入到資料庫且沒有出現BUG~~ 不過我還是想要請問一下,BCB程式設計時,是不是有時候會出現明明程式碼寫法是對的,但是會跑出一些BUG無法執行,或是資料庫聯結上匯出問題 這種狀況雖然也不是第一次發生,但是有人知道如何避免或是遇到時有何應變措施??? bcb新手上路 請多指教 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |