VS2012 使用MySql的API函数连接数据库(成功), 以及使用mysql-connector-c++-1.1.3遇到的问题!

前言:

由于最近感觉VC6,很老了,想尝试一下新的IDE,于是就在网上下载了VS2008以及VS2012,考虑到以后大学毕业后,用VS2012的可能性更大,所以选择了VS2012。但是,就在使用VS2012的第一步,就很艰难。之前在VC6上,使用MYSQL的API,很简单的就能够连接到数据库。但是这次,我足足花费了4天的时间,在网上查阅了很多的资料,才堪堪参考了别人的文章,使用API的方式连接上了数据库。这是第一次写博客,该篇的内容有:1,使用API连接数据库。2,使用connector c++的问题。


正文一:(如何使用MYSQL的API函数连接数据库)

这里我先把我参考的文章的地址贴出来,同时也谢谢该博主。http://blog.csdn.net/hngchiming/article/details/8256587...文章名:Visual Studio 2012 C++ Mysql LNK2019 error


第一步:配置(其实,使用MySQL的API连接数据库,配置相当简单)

 属性->C/C++->常规->附加包含目录:D:\Program Files\MySQL\MySQL Server 5.6\include, 我的数据库目录在D盘,读者根据自己的实际情况。

属性->链接器->常规->附加库目录:D:\Program Files\MySQL\MySQL Server 5.6\lib

属性->链接器->输出->附加依赖项:libmysql.lib;

第二步:修改编译平台,改为x64(说明:我使用的是64位系统,数据库使用的也是64位的,但是我们创建的项目确实32位的控制台应用程序,这样的话肯定会编译失败,所以我们需要修改编译平台)



点击配置管理器,中的新建



在新建解决方案中选择x64,确定。


至此,就可以成功编译使用了.

第三步:编写代码

stdafx.h文件中,添加#include "winsock.h"  #include "mysql.h" #pragma comment(lib,"libmySQL.lib")  三项。

下面附上main中的代码:

// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "iostream"

using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
	MYSQL *sock;   
	MYSQL_RES *results;   
	MYSQL_ROW record; 

	char *host = "localhost";   
	char *user = "root";   
	char *pass = "biezhihua";   
	char *db = "test";   

	sock = mysql_init(0);  

	if (!sock)
	{
		;
	}

	if (!mysql_real_connect(sock, host, user, pass, db, 0, NULL, 0))
	{
		;
	}
	mysql_set_character_set(sock,"gb2312"); 
	if(mysql_query(sock,"select * from teacher "))   
	{   
		;
	}   
	results=mysql_store_result(sock);
	while (record = mysql_fetch_row(results))
	{
		cout<<record[1];
		cout<<record[2];
	}
	mysql_close(sock);
	system("pause");
	return 0;
}//  这段代码只是为了简单的演示,并没有做过多的修饰。在执行项目之前, 不要忘记创建对应的表

总结:API连接与之前版本唯一的不同,就是 修改编译平台。


正文二:在这四天中,使用 mysql-connector-c++-1.1.3遇到的问题。

参考的文章有:

http://blog.qiwen.name/2013/01/build-mysql-connector-c-111-in-vs2012.html  文章名:QI Wen 记录学习点滴: 当MySQL遇到VS2012:编译MySQL Connector C++ 1.1.1 for VS2012

http://blog.csdn.net/liuyan4794/article/details/8604932   文章名:VS2010编译mysql-connector-c++ - 青牛的专栏 - 博客频道 - CSDN.NET

http://stackoverflow.com/questions/13309900/building-mysql-connector-c-from-source-cant-find-boost-libraries-error  文章名:Building MySQL Connector/C++ from source (can't find Boost libraries error) - Stack Overflow

发生的问题:

一、boost的配置问题,在第一篇文章中,安装Boost就遇到了问题。我按照他文章做,但是遇到错误。

错误原因是:路径配置错误,需要在系统环境变量中添加BOOST_ROOT ,值位解压的根目录,xxx\boost_1_54_0

二、编译自己的connector c++ 1.1.3 dll、lib文件遇到问题。我第一次进行编译的时候,很顺利的编译出了mysqlcppconn-static.lib,mysqlcppconn.dll,mysqlcppconn.lib三个文件,并按照文章,配置环境,添加文件,但是在最后生成解决方案时候,还是出现了LINK 2019错误。由于弄了4天了,今天打算弄最后一次,但是这次使用 cmake -G "Visual Studio 11 Win64" 命令时,去出现对了警告,根本没有编译结果,在网上查了很久,也没有相似的例子。


 结尾: 其实还是想使用connector c++ 来连接数据库,如果有哪位同学,知道如果连接或者方法,请联系我。谢谢




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值