• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

在VC2008中使用"MySQL Connector/C++ "连接My_MySQL

mysql 搞代码 4年前 (2022-01-09) 26次浏览 已收录 0个评论

最近参与一个项目,要在VC环境下编程访问数据库。

一般来说,VC下采用微软自身的SQL Server是比较常见的做法。但是我总觉得SQL Server只适合学习,不适合真正应用。再加上像我们这样一个算小也不小,算大也不大的项目来说,网上推荐的总是MySQL。基于这样的考虑,我们就选择了MySQL作为后台数据库。

C++语言本身并没有提供访问数据库的东西。因此一般我们要使用访问数据库的驱动。微软提供过一个ODBC的标准API,用于屏蔽各数据库底层细节,提供统一接口访问各个数据库。在MySQL官网上也能下到一个叫”Connector/ODBC”的driver,但是就在同一个网页上,又看到一个”Connector/C++”的driver,于是我就想,既然能专门针对C++语言提供一个driver,那这个应该比ODBC要效率高些吧。因此我就选择了他。

经过一番探索,终于搞定了数据库访问问题。废话不多说,下面就讲讲如何配置。

————————————————————————————————————————–

首先在http://www.mysql.com/downloads/上下载”Connector/C++”的driver,注意要下1.0.5版本的(最新的1.1.0版要使用一个神马库,麻烦)。下完后安装(或者免安装版的直接解压),完了之后在安装目录下会生成一个”MySQL Connector C++ 1.0.5″的文件夹,里面有两个子文件夹”include”及”lib”,其中lib文件夹下又有一个debug本文来源gao*daima.com搞@代#码&网6文件夹和opt文件夹。

在VC中新建一个项目,

1.右击项目->属性->配置属性->”C/C++”->常规,在“附加包含目录”中将刚刚所说的”include”及”include/cppconn”的路径包含进来。

2.若在debug下,属性->配置属性->链接器->常规,在“附加库目录”中将刚刚所提的”lib”文件夹下的子文件夹”debug”的路径包含进来。若在release下,则将”opt”的路径包含进来。

3.属性->配置属性->链接器->输入,在“附加依赖项”中添加”mysqlcppconn.lib,mysqlcppconn-static.lib”这两项(这两项其实是”lib”文件夹下的两个lib文件)。

4.将”MySQL Connector C++ 1.0.5/lib/debug”下的”mysqlcppconn.dll”文件复制到windows/system32文件夹下或直接复制到项目所在路径下的debug文件夹下。(release下类似,复制”…/lib/opt”下的即可。

5.将”MySQL安装目录/lib/opt”下的”libmysql.dll”文件复制到windows/system32文件夹下。

至此,整个运行环境就算配置好了。现在可以编写一段简单的代码测试一下。提供一段代码如下:

#include #include #include #include #include #include #include <br />using namespace sql;<br />using namespace std;<br />void RunConnectMySQL() <br />{<br />    mysql::MySQL_Driver *driver;<br />    Connection *con;<br />    Statement *state;<br />    ResultSet *result;<br />    // 初始化驱动<br />    driver = sql::mysql::get_mysql_driver_instance();<br />    // 建立链接<br />    con = driver->connect("tcp://127.0.0.1:3306", "root", "123");<br />    state = con->createStatement();<br />    state->execute("use test");<br />    // 查询<br />    result = state->executeQuery("select * from testuser where id < 1002");<br />    // 输出查询<br />    while(result->next())<br />    {<br />        int id = result->getInt("ID");<br />        string name = result->getString("name");<br />        cout << id << " : " << name << endl;<br />    }<br />    delete state;<br />    delete con;<br />}<br />int main()<br />{<br />    RunConnectMySQL();<br />    getchar();<br />    return 0;<br />}

当然,如果想让这段代码正确执行的话,首先得先在数据库里建一张对应的表(此处略去若干字)。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:在VC2008中使用&quot;MySQL Connector/C++ &quot;连接My_MySQL

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址