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

ADOQuery 的inert問題

缺席
a126154362
一般會員


發表:21
回覆:13
積分:6
註冊:2004-05-30

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-08-29 13:24:14 IP:61.70.xxx.xxx 未訂閱
我想要用ADOQuery做資料庫的insert功能 但是我想要插入的資料是'變數' 請問各位大大要怎麼做呢
a126154362
一般會員


發表:21
回覆:13
積分:6
註冊:2004-05-30

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-08-29 19:09:01 IP:61.70.xxx.xxx 未訂閱
引言: 我想要用ADOQuery做資料庫的insert功能 但是我想要插入的資料是'變數' 請問各位大大要怎麼做呢
小弟寫的程式碼(server端)(client端只傳帳號,密碼和接收訊息而已) //--------------------------------------------------------------------------- #include #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; AnsiString buf,buf1,in=12; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::ServerSocket1ClientRead(TObject *Sender, TCustomWinSocket *Socket) { buf = Socket->ReceiveText(); Edit1->Text=buf; } //--------------------------------------------------------------------------- void __fastcall TForm1::ServerSocket2ClientRead(TObject *Sender, TCustomWinSocket *Socket) { AnsiString test; buf1 = Socket->ReceiveText(); Edit2->Text=buf1; } //--------------------------------------------------------------------------- void __fastcall TForm1::ServerSocket4ClientRead(TObject *Sender, TCustomWinSocket *Socket) { in=Socket->ReceiveText(); Label4->Caption=in; AnsiString test; if(in==1) { ADOQuery1->Close(); ADOQuery1->SQL->Clear(); ADOQuery1->Parameters->CreateParameter("checkID",ftString,pdInput,30,buf); ADOQuery1->Parameters->CreateParameter("checkPassword",ftString,pdInput,30,buf1); ADOQuery1->SQL->Add("Select * From 資料表1 Where ID=:checkID and Password=:checkPassword"); ADOQuery1->Open(); if(ADOQuery1->RecordCount==1) { test="登入成功"; ServerSocket3->Socket->Connections[0]->SendText(test); Edit3->Text=ADOQuery1->RecordCount; } else { test="登入失敗"; ServerSocket3->Socket->Connections[0]->SendText(test); } } else { ADOQuery1->Close(); ADOQuery1->SQL->Clear(); ADOQuery1->Parameters->CreateParameter("checkID",ftString,pdInput,30,buf); ADOQuery1->Parameters->CreateParameter("checkPassword",ftString,pdInput,30,buf1); ADOQuery1->SQL->Add("Select * From 資料表1 Where ID=:checkID"); ADOQuery1->Open(); Edit3->Text=ADOQuery1->RecordCount; if(ADOQuery1->RecordCount==1) { test="此帳號以有人使用"; ServerSocket3->Socket->Connections[0]->SendText(test); } else { ADOQuery1->Close(); ADOQuery1->SQL->Clear(); ADOQuery1->Parameters->CreateParameter("checkID",ftString,pdInput,30,buf); ADOQuery1->Parameters->CreateParameter("checkPassword",ftString,pdInput,30,buf1); ADOQuery1->SQL->Add("Insert into 資料表1 (ID,Password)"); ADOQuery1->SQL->Add("Values (:checkID,:checkPassword)"); ADOQuery1->ExecSQL(); test="註冊成功"; ServerSocket3->Socket->Connections[0]->SendText(test); } } } //--------------------------------------------------------------------------- 其他功能都可以正常 只有紅色部分要寫入資料庫時有錯誤 (提供不一致或不完全的資訊導致參數不適當的被拒絕) 不知道為什麼
a126154362
一般會員


發表:21
回覆:13
積分:6
註冊:2004-05-30

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-08-29 23:36:52 IP:61.70.xxx.xxx 未訂閱
引言: ADOQuery1->Close(); ADOQuery1->SQL->Clear(); ADOQuery1->Parameters->CreateParameter("checkID",ftString,pdInput,30,buf); ADOQuery1->Parameters->CreateParameter("checkPassword",ftString,pdInput,30,buf1); ADOQuery1->SQL->Add("Insert into 資料表1 (ID,Password)"); ADOQuery1->SQL->Add("Values (:checkID,:checkPassword)"); ADOQuery1->ExecSQL(); test="註冊成功"; ServerSocket3->Socket->Connections[0]->SendText(test); } } } //--------------------------------------------------------------------------- 其他功能都可以正常 只有紅色部分要寫入資料庫時有錯誤 (提供不一致或不完全的資訊導致參數不適當的被拒絕) 不知道為什麼
剛剛去爬了一下文章 找到我的問題了 就是上文黃色的部份(要刪除) 參考這篇文章: http://delphi.ktop.com.tw/topic.php?topic_id=30115
系統時間:2024-05-05 22:07:52
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!