如何用C++访问MySQL数据库
如题,我想知道用ADO怎么访问啊,有没有源代码呀,不用ADO的话用别的怎么访问啊
[解决办法]
参考:
http://blog.csdn.net/tukidrmyd/archive/2009/09/05/4522152.aspx
应该可以解决你的问题。
[解决办法]
一般是ado,比较方便,不管什么数据库,只是连接的时候参数不同而已
[解决办法]
或者用odbc访问数据库
[解决办法]
上MYSQL的官网,里面有很的API函数可以使用,
[解决办法]
晕》 ADO是什么呀? 瞎解释
用mysql提供api呀
[解决办法]
http://www.hudong.com/wiki/ADO
这篇文章讲了些基本的。
[解决办法]
看我的博客吧,满足你所有要求:
MYSQL C API 访问程序(更新升级版本)
http://blog.csdn.net/hzhxxx/archive/2010/12/27/6100752.aspx
[解决办法]
我现在做得就是MySQL C API的封装!
[解决办法]
//ADO.h#pragma once#include <string>using namespace std;#import "msado15.dll" no_namespace rename("EOF", "adoEOF")class CADO{public: CADO(void);public: virtual ~CADO(void);public: //属性 _ConnectionPtr m_pConnection; //连接对象指针 _RecordsetPtr m_pRecordset; //记录集对象指针public: //函数 bool OnInitAdoConn(wstring strConnect); //连接数据库 _RecordsetPtr &OpenRecordset(wstring sql); //打开记录集 void CloseRecordset(); //关闭数据集 void CloseConn(); //关闭数据库连接 int GetRecordCount(_RecordsetPtr pRecordset); //获取记录数};//ADO.cpp#include "StdAfx.h"#include "ADO.h"CADO::CADO(void):m_pConnection(NULL), m_pRecordset(NULL){}CADO::~CADO(void){}bool CADO::OnInitAdoConn(wstring strConnect){ try { ::CoInitialize(NULL); m_pConnection.CreateInstance(__uuidof(Connection)); m_pConnection->Open(_bstr_t(strConnect.c_str()), _bstr_t(""), _bstr_t(""), adModeUnknown); return true; } catch(_com_error e) { AfxMessageBox(e.Description()); } return false;}void CADO::CloseConn(){ m_pConnection->Close(); ::CoUninitialize();}_RecordsetPtr &CADO::OpenRecordset(wstring sql){ try { m_pRecordset.CreateInstance(__uuidof(Recordset)); m_pRecordset->Open(_bstr_t(sql.c_str()), m_pConnection.GetInterfacePtr(), adOpenDynamic, adLockOptimistic, adCmdText); } catch(_com_error e) { AfxMessageBox(e.Description()); } return m_pRecordset;}int CADO::GetRecordCount(_RecordsetPtr pRecordset){ try { int iCount = 0; if(m_pRecordset->adoEOF) { return 0; } while(m_pRecordset->adoEOF) { iCount++; m_pRecordset->MoveNext(); } m_pRecordset->MoveFirst(); return iCount; } catch(_com_error e) { AfxMessageBox(e.Description()); return -1; }}void CADO::CloseRecordset(){ if(m_pRecordset->GetState() == adStateOpen) { m_pRecordset->Close(); }}