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

ADO查詢顯示錯誤,

缺席
yishyong
一般會員


發表:2
回覆:2
積分:0
註冊:2006-11-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-01-12 08:46:14 IP:210.60.xxx.xxx 訂閱
我使用ADO的方式查詢帳號密碼,
如果第一次輸入帳號密碼正確的話,程式就沒問題
但如果第一次輸入錯誤,不管後面再次輸入是否正確,都直接出現下列的訊息
"Either BOF or EOF is True, or the current record has been deleted.
 Requested operation requires a current record."
如果整個程式關掉重開,且輸入帳號密碼正確的話,就不會再出現
否則就還是會出現上述的狀況,
不知各位前輩有何高見
以下是我的程式碼:
void __fastcall TMainForm::Button4Click(TObject *Sender)
{
        AnsiString UserID = InputBox("登入","使用者帳號:","");
        AnsiString PassWD = InputBox("登入","使用者密碼:","");
        //---以下查詢使用者權限---
        ADOQuery3->ConnectionString = "Provider=SQLOLEDB.1;Password=XXX;
              Persist Security Info=True;User ID=sa;Initial Catalog=card;
              Data Source=192.168.4.10;Use Procedure for Prepare=1;
              Auto Translate=True;Packet Size=4096;Workstation ID=123;
              Use Encryption for Data=False;Tag with column collation when possible=False";
        ADOQuery3->Close();
        ADOQuery3->SQL->Clear();
        ADOQuery3->SQL->Add("Select do_readcard01 from userdb where '"  UserID  "' 
                             and passwd='"  PassWD  "'");
        ADOQuery3->Open();
        if (ADOQuery3->Eof){
                Application->MessageBoxA("您輸入的帳號密碼錯誤,或者是您沒有一讀的權限,
                                          請恰系統管理員。","警告訊息",0);
        }else{
               Application->MessageBoxA("正確~請繼續工作。","警告訊息",0);
        }
  }
P.S. 資料庫是MS SQL
yishyong
一般會員


發表:2
回覆:2
積分:0
註冊:2006-11-21

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-02-12 11:23:05 IP:210.60.xxx.xxx 訂閱
我找到原因了,在Delphi資料庫的討論區有寫到
系統時間:2024-04-20 22:50:25
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!