这篇主要介绍在VS下操作MySQL数据库的平台搭建:
开发语言为C/C++,开发平台为VS2010。
(就光能通过编译运行就用了我很多时间)
MySQL官方了提供C的API,用C/C++语言编程方式在C/S架构下在客户端连接到MySQL数据库。
据说这个是直接通过调用API函数,里面会自动连接到目标服务器,而省去了socket等的网络连接过程
参考资料:http://dev.mysql.com/doc/
由于装的是MySQL5.5的版本,因此这里上5.5版API传送门:http://dev.mysql.com/doc/refman/5.5/en/c-api.html
————————————————————————————————————————————————————————————
首先是在VS2010上搭建环境:
首先保证安装MySQL,启动服务。(注意有VS对应版本的问题)
(这里有个可以在VS上建立MYSQL的连接,调用mysql的工具条,操作Mysql数据库,功能和那种图形化的MySQL工具很相似。具体见文档)
1.首先先创建一个空项目为例,正常创建方式,这个就不贴图了。
添加一个MySQL的示例代码,(这里涉及到动态库的调用)
然后进行编译
#include <stdio.h>
#include <stdlib.h>
#include <WinSock2.h>
#include "mysql.h"
#pragma comment(lib, "libmysql")
int main()
{
mysql_library_init(0, NULL, NULL);
printf("great!\n");
mysql_library_end();
getchar();
return 1;
}
称没有找到头文件和函数。
缺少.h需要将MySQL的头文件和lib库包含到工程下。在MySQL安装目录的include和lib文件下。
解决方式:在工程项目上右击。然后选择属性->配置属性->VC++目录里的包含目录和库目录里添加路径:如下
(VS2010前的版本好像可以设置添加,到VS2010之后只能对工程进行添加。)添加完成后,再次编译。发现没有错误。
3.当启动的时候再次报错:问题如下:
对于库中的函数无法调用的问题“:
出现原因:没有将DLL库添加到工程目录下。
解决办法:将MySQL安装目录下lib中的libmysql.dll复制到工程目录下
再次编译运行,依旧出现这个问题。
这个问题纠结了我很久,后来才知道因为我的系统是win7 64位的,MySQL也是64位的。而VS的运行平台是Win32。
找到问题,然后在配置管理器中将平台改为x64,如下图:
4.在重新添加一下目录。再次编译运行,则程序就可以正常运行,
到此为止,平台搭建完毕!