首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> 關於VC++

VC++ 6.0 使用 ADO 連接 Access 資料庫完整教學與程式碼範例

     編輯:關於VC++

ActiveX Data Objects (ADO) 是微軟提供的高階資料存取介面,透過 Connection 物件的 Open 方法即可建立資料庫連線。本文詳細說明 ADO 連接 Access (.mdb) 資料庫的參數設定、程式碼實作與錯誤處理,適用於 Visual C++ 6.0 開發環境。

Connection.Open 方法語法與參數說明

Connection.Open ConnectionString, UserID, Password, OpenOptions
參數型別說明
ConnectionStringString (可選)包含驅動程式、資料庫路徑等連線資訊
UserIDString (可選)登入使用者名稱
PasswordString (可選)登入密碼
OpenOptionsConnectOptionEnum (可選)若設為 adConnectAsync 則非同步開啟,完成時觸發 ConnectComplete 事件

完整程式碼實作

初始化 ADO 連線

void CConnectDlg::OnInitADOConn() {
  try {
    // 建立 Connection 物件實例
    m_pConnection.CreateInstance(_T("ADODB.Connection"));
    // 設定連線字串:使用 Microsoft Access Driver
    CString strConnect = _T("DRIVER={Microsoft Access Driver (*.mdb)};UID=;PWD=;DBQ=shujuku.mdb;");
    // 開啟連線
    m_pConnection->Open((_bstr_t)strConnect, _T(""), _T(""), adModeUnknown);
  }
  catch (_com_error e) {
    AfxMessageBox(e.Description()); // 顯示 COM 錯誤描述
  }
}

關閉連線與資源釋放

void CConnectDlg::ExitConnect() {
  // 關閉 Recordset 與 Connection
  if (m_pRecordset != NULL)
    m_pRecordset->Close();
  m_pConnection->Close();
}

關鍵點總結

  • 專案需引用 msado15.dll (或更新版本) 並啟用 #import 指令產生智慧指標。
  • 連線字串中 DBQ 指定 .mdb 檔案完整路徑;若有密碼請填入 PWD。
  • 使用 _bstr_t 進行 ANSI/Unicode 字串轉換,避免編碼問題。
  • 務必在 try-catch 中捕捉 _com_error,取得詳細錯誤資訊。

常見問題排查

  1. 找不到驅動程式:確認系統已安裝 Microsoft Access Database Engine (32/64 位元需與專案一致)。
  2. 連線字串錯誤:路徑含空白請用單引號括起,或改用絕對路徑。
  3. 權限不足:檢查 .mdb 檔案與資料夾的寫入權限。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved