环境:win7 64位 旗舰版
在mysql官网下载数据库驱动,下载32位的 (当以x64模式编译程序时,需要用到64位的)
https://dev.mysql.com/downloads/connector/odbc/5.1.html
①在vc里面使用odbc(数据源)连接mysql的方法
1.新建一个数据源 ,名字叫pms
2.在代码里面加入如下代码,即可以测试连接功能。
需要注意的是:引用CDatabase时需要加入头文件 #include "afxdb.h"
try
{
CDatabase db;
db.Open(NULL,FALSE,FALSE,"DSN=pms;server=localhost;database=pmsserver");
}
catch (CException* e)
{
TCHAR szError[1024]={0};
e->GetErrorMessage(szError,1024); // e.GetErrorMessage(szError,1024);
::AfxMessageBox(szError);
}
②在vc里面使用ado (或者叫oledb) 连接mysql的方法
需要注意的是:要先调用AfxOleInit去初始化oledb,因为ado依赖于oledb
try
{
if (!AfxOleInit()) {
AfxMessageBox("初始化失败!");
return FALSE;
}
CString str1="";
str1="driver={MySQL ODBC 5.1 Driver};Server=127.0.0.1;DATABASE=pmsserver;USER=root;PASSWORD=123456;OPTION=3;";
_ConnectionPtr m_pConn;
HRESULT hr = m_pConn.CreateInstance(__uuidof(Connection));
m_pConn->Open(_bstr_t(str1),"","",adModeUnknown);
}
catch (CException* e)
{
TCHAR szError[1024]={0};
e->GetErrorMessage(szError,1024); // e.GetErrorMessage(szError,1024);
::AfxMessageBox(szError);
}
③在vc里面使用,另外一种连接mysql的方法是使用mysql c api,用api函数 mysql_real_connect 去连接
总结以上三种方式