VS与MySQL通过ADO方式连接

7 篇文章 0 订阅

1.下载好MySQL之后,安装开发员的版本,用命令行在数据库test下建立表st并插入了两条记录,然后OBDC添加用户、系统DSN 驱动程序是MySQL OBDC 5.3 ANSI Driver



2.获取连接字符串用的方法是下面链接中讲的方法

http://blog.csdn.net/zyq5945/article/details/5486393

连接字符串是:

Provider=MSDASQL.1;Persist SecurityInfo=False;Extended Properties="Driver=MySQL ODBC 5.3 ANSIDriver;SERVER=localhost;UID=root;DATABASE=test;PORT=3306"

3.在VS2010中连接到数据库  我连接到了test 数据库,其中有一个表st,表内有两条内容。(数据库已拷贝在工程目录下)



4.在VS添加类ADOConn 在添加三个函数进行初始化、退出、获取记录集,其中初始化时使用刚刚得到的连接字符串。代码如下。

void ADOConn::OnInitADOConn(void)
	{
	::CoInitialize(NULL);
	try
	{
	m_pConnection.CreateInstance("ADODB.Connection");  
	//连接字符串
	_bstr_t strConnect="Provider=MSDASQL.1;Persist Security Info=False;Extended Properties=Driver=MySQL ODBC 5.3 ANSI Driver;SERVER=localhost;UID=root;DATABASE=test;PORT=3306";
	m_pConnection->Open(strConnect,"root","liuxinyuan",adModeUnknown);
	}
	catch(_com_error &e)
	{
	AfxMessageBox(e.Description());
	}
	}

	void ADOConn::ExitConnect(void)
	{
	::CoUninitialize();
	//关闭记录集和连接
	if(m_pRecordset!=NULL)
	m_pRecordset->Close();
	m_pConnection->Close();
	//释放环境

	}
	_RecordsetPtr& ADOConn::GetRecordSet(_bstr_t bstrSQL)
	{
	//TODO: insert return statement here
	try
	{
	if(m_pConnection==NULL)
	OnInitADOConn();
	m_pRecordset.CreateInstance(__uuidof(Recordset));
		m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
	}
	catch(_com_error &e)
	{
	AfxMessageBox(e.Description());
	}
	return m_pRecordset;
	}

5.由于我的本是64位系统所以还需要进行设置。(1)工程st->右键属性 平台——新建——X64。(2)字符集——多字节字符集


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值