在C語言中,ADO(ActiveX Data Objects)是一種與數據庫交互的技術。使用ADO可以輕松地連接和操作不同的數據庫系統。在本文中,我們將探討如何使用ADO連接MySQL數據庫。
在連接MySQL之前,我們需要先安裝MySQL的ODBC驅動程序。這個驅動程序可以通過MySQL官方網站下載,安裝并配置好之后就可以使用ADO連接MySQL了。
// 聲明ADO相關的頭文件 #include#include // main函數入口 int main() { HRESULT hr = CoInitialize(NULL); // 初始化COM庫 if (FAILED(hr)) return -1; _ConnectionPtr pConn; // 定義數據庫連接指針 hr = pConn.CreateInstance(__uuidof(Connection)); // 創建連接對象 if (FAILED(hr)) return -1; // 設置數據庫連接信息 bstr_t strConnect = L"driver={MySQL ODBC xx Driver};Server=localhost;Uid=root;Pwd=123456;Database=test"; hr = pConn->Open(strConnect, "", "", adModeUnknown); // 連接數據庫 if (FAILED(hr)) return -1; // 查詢數據 _RecordsetPtr pRecordset; hr = pRecordset.CreateInstance(__uuidof(Recordset)); if (FAILED(hr)) return -1; hr = pRecordset->Open(L"select * from user", pConn.GetInterfacePtr(), adOpenStatic, adLockOptimistic, adCmdText); if (FAILED(hr)) return -1; // 使用數據 while (!pRecordset->adoEOF) { // 獲取數據 _bstr_t name = pRecordset->Fields->GetItem("name")->Value; _variant_t age = pRecordset->Fields->GetItem("age")->Value; // 處理數據 printf("name:%s, age:%d\n", (const char*)name, age.intVal); // 移動到下一條記錄 pRecordset->MoveNext(); } // 清理資源 pRecordset->Close(); pConn->Close(); CoUninitialize(); return 0; }
上面的代碼中,我們使用了一個COM接口_ConnectionPtr來表示數據庫連接對象。_RecordsetPtr則表示查詢結果集對象。由于ADO是COM組件,因此我們需要使用COM庫中的函數CoInitialize和CoUninitialize來進行初始化和清理操作。在連接字符串中,我們設置了MySQL ODBC驅動程序的參數,包括數據庫名稱、用戶名和密碼等。
最后,我們使用_RecordsetPtr對象從數據庫中查詢數據,并輸出到控制臺中。這是一個雖然簡單,卻非常實用的連接MySQL數據庫的方法。
上一篇mysql ltrim
下一篇mysql ma