c++使用mysql的api连接相关问题
Posted lcchuguo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++使用mysql的api连接相关问题相关的知识,希望对你有一定的参考价值。
记录一下自己使用中的相关问题,方便有相同问题的同学解决。
- 关于在VS中的各种配置。看这里。只是须要注意一下,我如今用的mysql版本号是5.6的,已经没有【MySQL Server \\lib\\opt】这个路径了。将这一项设置到【MySQL Server \\lib】就可以
- 假设出现例如以下错误:
1>main.obj : error LNK2019: 无法解析的外部符号 _mysql_server_init@12,该符号在函数 _main 中被引用 1>main.obj : error LNK2019: 无法解析的外部符号 _mysql_init@4。该符号在函数 _main 中被引用 1>main.obj : error LNK2019: 无法解析的外部符号 _mysql_real_connect@32,该符号在函数 _main 中被引用 1>main.obj : error LNK2019: 无法解析的外部符号 _mysql_options@12,该符号在函数 _main 中被引用
由于依照第一步来的时候,建立的是win32项目,而如今系统、mysql使用的就均是x64的。改成x64就可以,操作过程例如以下:
.项目->属性->配置管理器
活动解决方式平台。下拉选新建,出现一个新的对号框。在键入选择新平台中选择X64
学习自这里
- 之后能够写一个简单的c程序測试一下是否成功
#include "winsock.h" #include "iostream" #include "mysql.h" #pragma comment(lib, "ws2_32.lib") #pragma comment(lib, "libmysql.lib") using namespace std; void main() { MYSQL mydata; mysql_library_init(0,NULL,NULL);//初始化MySQL C API库 mysql_init(&mydata);//初始化mydata的数据结构,mydata是MYSQL对象 mysql_options(&mydata,MYSQL_SET_CHARSET_NAME,"gbk");//连接选项:加入GBK字符集支持 //连接函数 if(mysql_real_connect(&mydata,"localhost","root","1234","demo", 3306, 0, 0) != NULL) cout<<"database connection OK!"<<endl; }
这里注意一下,mysql_real_connect函数中的几个參数(&mydata,"localhost","root","1234","demo", 3306, 0, 0),一般就须要改2,3,4,5几个參数就可以,分别为数据库位置,username,password,待连接的数据库名称
- 假设代码中出现#include "stdafx.h"报错:ERROR。无法打开源文件...,參见这里
主要是因为这个头文件属于预编译头文件。假设在创建项目时候没有告诉VS相关信息,当然不认识这是什么东西了。
- #error : Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL
參见这里
-
c++ fatal error C1083: 无法打开预编译头文件:“.\\Debug\\router.pch”
參见这里,这个问题也属于预编译头文件问题
以上是关于c++使用mysql的api连接相关问题的主要内容,如果未能解决你的问题,请参考以下文章
初识Mysql 连接器的收获(包含JDBC API最新文档)以及一些c++的有用技巧