问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

请教关于vs2010连接mysql数据库问题

发布网友 发布时间:2022-04-11 22:25

我来回答

2个回答

懂视网 时间:2022-04-12 02:47

只用VS2010编译mysql-connector-c 0 准备: 1)安装mysql服务器 2)安装boost库 3)下载并解压mysql-connector-c-noinstall-1.1.1(http://www.mysql.com/downloads/connector/cpp/) 4)下载并解压mysql-connector-c源码备用,以下简称“源码” 1 新建项目 打

只用VS2010编译mysql-connector-c++

0 准备:

1)安装mysql服务器
2)安装boost库
3)下载并解压mysql-connector-c++-noinstall-1.1.1(http://www.mysql.com/downloads/connector/cpp/)
4)下载并解压mysql-connector-c++源码备用,以下简称“源码”

1 新建项目
打开VS2010,新建Win32 DLL项目“mysqlconn”,选择“Empty project”

2 拷贝必要文件
1)将源码中的driver文件夹拷贝到项目文件夹mysqlconn中,
2)在项目文件夹mysqlconn中新建include目录,这里需要放两个文件夹:
a)将mysql-connector-c++ noinstall目录中的cppconn文件夹拷贝至include中
b)新建一个mysql文件夹,并将mysql服务安装目录下的include文件夹中的头文件拷贝至其中
3)在项目文件夹mysqlconn中新建lib目录并将libmysql.lib拷贝指其中

3 添加必要文件到项目
1)将mysqlconn中driver目录下的.h和.cpp文件加入项目(先不加子文件夹nativeapi中的文件):
项目右键->Add->New Filter,命名为“Driver”,“Driver”右键->Add->Existing Item,
找到并选中driver文件夹下的.h和.cpp文件,加入过滤器Driver中

2)再新建Native过滤器,加入driver ative中的cpp文件,注意“libmysql_dynamic_proxy.cpp”和“libmysql_static_proxy.cpp”一定不要添加,否则会出一堆错误“error LNK2005”

4 设置项目属性
1)C/C++增加“附加包含目录”:
mysqlconn下的include
mysqlconn下的include下的cppconn
mysqlconn下的include下的mysql
boost目录

2)设置预处理器定义:
WIN32;_DEBUG;_LIB;mysqlcppconn_EXPORTS

3)设置链接器
添加“附加包含目录”:mysqlconn下的lib文件夹
添加“附加依赖项”:libmysql.lib

5 编译

生成的mysqlconn.lib 和 mysqlconn.dll就可以用在vs2010项目中了


CMake+VS编译

http://www.cnblogs.com/wenix/archive/2012/10/10/2719117.html

软件环境:

win8 build8200 64位版本,

visual studio 2012,

mysql 5.5.28,

mysql connector c++ 1.1.1

从官网上下载了mysql connector c++ 1.1.1以后,使用封装的类连接时出了很多令人十分蛋疼的问题。

1.缺少sqlstring.h头文件---->下载noinstall版本,里面有这个文件。

2.需要boost环境---->下载boost库,然后编译,然后加入头文件和库文件搜索路径到工程中。

3.使用result->getString();崩溃。---->下面详细说明此问题。

原因是官方提供的库文件版本与需要的库版本不匹配,提供的debug版本使用的是MT版本,在debug模式下会出现内存错误,导致crash。只是根本原因,至于加入msvcrt.lib等库文件等解决办法,毫无作用。经过试验,只能使用如下办法:

1.下载mysql connector c++ 1.1.1 源代码,解压到非系统盘下(涉及权限问题)。

2.下载cmake

3.配置MYSQL_DIR指向mysql server的路径。

4.配置BOOST_ROOT指向boost库路径。

5.把cmake添加到PATH中。

6.然后使用visual studio 2012 自带的命令终端进入mysql connector c++ 1.1.1解压后的目录中,不建议使用一般终端,因为可能会有环境变量没配置的情况。

7a.输入cmake -G "Visual Studio 11 Win64".

8a.输入devenv.com MySQLCPPCONN.sln /build Release,这样编译出来的库版本是Release版本,dll在driver/Release目录下。

7b.输入cmake -G "Visual Studio 11 Win64" -DCMAKE_BUILD_TYPE=Debug

8b.输入devenv.com MySQLCPPCONN.sln /build Debug,这样编译出来的库版本是Debug版本,dll在driver/Rease目录下。

然后把相应的库拷贝到工程的Debug,Release目录下,配置工程属性中的c/c++-->Code Generation-->Runtime Library为MDd,就是Debug版,如果是MT,就是Release版本。这样上面的问题就解决了。

PS:我的是64位环境,如果是win32的,相应的参数可以使用cmake --help来查看,然后替换即可。

热心网友 时间:2022-04-11 23:55

你这个是要用什么语言做。 C++还是.net。 .Net做起来还是比较简单的,但是代码量比较大。C++做起来比较难啊,而且代码量会更大。 建议使用.net+SQL Server来做,这是VS中比较合适的组合。 如果用C++做的话,先选择连接数据库的方法在开工。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我要问一下掇刀医保局恢复正常上班吗? 医保卡是东宝区的怎么才能转到掇刀区 东宝人社局 医保局 空调扇和风扇有什么区别 ...上了技校,现在上了电大的大专,档案在自己手里怎么办? 高职扩招的档案从哪里来 专科没有毕业档案怎么办 技校没上完考上专科,档案怎么转 凉薯和红薯有什么区别 凉薯和山药一样吗 我是一名教师 评职称发表论文 不知道网上哪些机构好点 具体? 你好 我的是64 win7 + 64位mysql + vs2010(vs2008) 在连接mysql时 编译时 始终无法打开libmysql.lib vi 下如何一个操作到一个文件的头部 apple mac os x可以装app吗 我家mac地址是C8:3A:35:82:A1:08。想请问大神能通过mac码知道我家宽带账号被几个人使用了吗?长城宽带 全球第二大操作系统诞生,超越苹果拿下全球10.8%份额,对此你怎么看? 请问如何修改电脑的MAC地址以避免遭网络攻击? iptables命令解释 初入职场的小白应该如何应对各种问题? 工作中的不足 工作的时候,经常出一些小差错,问题虽然不大,但是总会影响到工作。真不知道该如何处理?拜托各位大神 在工作中遇到困难挫折时,你会如何处理? 在工作中遇到的各种问题,感觉跟书本上学到的很不相干 唉 很困惑啊 职场压力大,有哪8个小技巧可以解压? 职场中,有哪些常见问题? 工作总结中遇到的小问题 让生活变简单的几个小技巧,你可以分分钟学 追女生的几个技巧,让她每时每刻都会想你 生活技巧有很多,这几个小技巧相信你一定会喜欢 初次创业者必知的几个技巧 掌握这几个技巧 跑步再久也不累 vs2010 mysql 插入记录问题 如何用vs2010的setup project打包mysql vs2010 如何连接mysql,详细点 关于vs2010中是怎样连接mysql数据库 plsql developer 怎么导出sql plsql developer导出数据库吗 数据库查询问题,如何实现max(sum(...)) 功能,对于group by 的格式要求 运行时修改数据库连接字符串(ConnectionString) 如何获得连接数据库的ConnectionString connectionString设置问题 C#中数据库连接 string connectionString=Properties.Settings.Default.MyDatabaseConnectionString 设置conn对象的ConnectionString(连接字符串)属性 解释string sonnectionString=ConfigutationManager.ConnectionStrings["ConnectionString"].ConnectionSt 网站的数据库连接字符串放到<connectionString>中还是<appSettings>中? connString = ConfigurationManager.ConnectionStrings["SQLStudentConnString"].ConnectionString; connectionstring的配置节用什么软件?用XML根本写不了,配置完appconfig不 制定健康管理计划的技巧有哪些? 怎样更好的制定学习计划 怎么制定一个假期学习计划,并且长期坚持下去 暑假来了,如何能制定一个好的学习计划,让自己不荒废这36天!