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

資料查詢錯誤的問題~

尚未結案
jacksonhuang
一般會員


發表:26
回覆:22
積分:9
註冊:2004-04-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-04-29 23:28:06 IP:140.124.xxx.xxx 未訂閱
請問:       我有一個執行client的程式和一個執行server的程式,其中server有執行資料庫,下面的程式碼是當server接到client login的指令後,就到資料庫內去查詢看看是否存在這個使用者,但不知道是那裡有寫錯,執行時就一直有錯誤 請大大幫幫我     Command_header buff;            AThread->Connection->ReadBuffer((void *)&buff,sizeof(Command_header));         if(buff.cmd==CMD_LOGIN){                                  ADOQuery1->Close(); ADOQuery1->SQL->Clear(); ADOQuery1->SQL->Text = "select * from Account_List where U_ID = '"+ AnsiString(buff.field.login.uid) +"'"; ADOQuery1->Open(); if(ADOQuery1->Eof && ADOQuery1->Bof) { ShowMessage("login fail"); } else { AnsiString msg=AnsiString("Login:"); msg+= AnsiString(buff.field.login.uid); msg+= " "; msg+= AnsiString(buff.field.login.passwd); Memo1->Lines->Add(msg); } } 但是我如果把紅色部份的code拿掉的話,就可以正常的work,但卻沒有辦法判斷使用者的帳號,請問這是什麼原因呢?? 他的錯誤訊息如下: 謝謝.......... 發表人 - jacksonhuang 於 2004/04/29 23:33:00
jcjroc
高階會員


發表:21
回覆:279
積分:115
註冊:2002-09-18

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-04-30 01:07:39 IP:61.219.xxx.xxx 未訂閱
應該是你的ConnectString沒給所導致 如果有,而且正確,那就給他個ADOConnect吧! 不過說實在的,我個人對於ADO沒啥好感,效率太差
jacksonhuang
一般會員


發表:26
回覆:22
積分:9
註冊:2004-04-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-05-01 04:57:04 IP:140.124.xxx.xxx 未訂閱
謝謝jcjroc大大: 不過我有用到的ADO元件的ConnectString都有給,而且好像ConnectString和 connection只能有一個有設定~
tech_state
版主


發表:44
回覆:638
積分:641
註冊:2003-02-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-05-01 11:14:58 IP:203.204.xxx.xxx 未訂閱
jacksonhuang, 您好 請試試將AnsiString(buff.field.login.uid)這段程式碼獨立出來,如下:    AnsiString sqlstr = AnsiString(buff.field.login.uid); ADOQuery1->Close(); ADOQuery1->SQL->Clear(); ADOQuery1->SQL->Text = "select * from Account_List where U_ID = '"+sqlstr+"'"; ADOQuery1->Open(); ================================= 涵養怒中氣。謹防順口言。留心忙裡錯。珍惜有時錢。 是非終日有,不聽自然無 天下本無事,庸人自擾之
jacksonhuang
一般會員


發表:26
回覆:22
積分:9
註冊:2004-04-20

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-05-04 09:45:50 IP:140.124.xxx.xxx 未訂閱
謝謝tech_state大大      我把AnsiString(buff.field.login.uid)獨立出來後,還是會有錯誤   if(buff.cmd==CMD_LOGIN){                                  AnsiString sqlstr = AnsiString(buff.field.login.uid);                 ADOQuery1->Close();                 ADOQuery1->SQL->Clear();                 ADOQuery1->SQL->Text = "select * from Account_List where U_ID = ''"+sqlstr+"''";                 ADOQuery1->Open();                 if(ADOQuery1->RecordCount==0)                 {                 ShowMessage("login fail");                 }                 else                 {                 AnsiString msg=AnsiString("Login:");                 msg+= AnsiString(buff.field.login.uid);                 msg+= " ";                 msg+= AnsiString(buff.field.login.passwd);                 Memo1->Lines->Add(msg);                 }         }            
系統時間:2024-04-30 8:53:22
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!