环境:mysql5.6.12(x64) 、visual studio 2013
语言:C++
步骤:
1.创建win32应用程序
2.添加include目录(%MYSQL_HOME%/include)(注:%MYSQL_HOME%替换为你的mysql安装目录)
3.copy libmysql.lib和libmysql.dll到项目目录
4.创建文件source.cpp(注,请替换"***"为mysql登陆密码)
#include<winsock2.h> #include<mysql.h> #include<iostream> #pragma comment(lib,"libmysql.lib") int main() { MYSQL mysql; mysql_init(&mysql); if (!mysql_real_connect(&mysql, "localhost", "root", "***", "test", 3306, NULL, 0)) { std::cout << "数据库连接失败" << std::endl; } else { std::cout << "连接成功" << std::endl; } return 0; }5.编译结果如下:
6.修改项目平台
application->属性->Platform 下拉列表中选X64 如果还不行(替换vc++ directories各属性值串中“86”为“64”)
总结:当我们用上述错误原因在baidu查找时,最多的解释就是缺少依赖项,但对于c++老手,肯定不会出现这种问题,而是由于我们创建的是win32程序,而我们用到的lib则是64位的,而32位和64位库不可能同时正常工作,因而会出现上述问题。