VS连接数据库需要在项目中进行配置,具体可见
https://blog.csdn.net/weixin_40582034/article/details/115562097?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170891897216800213058288%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=170891897216800213058288&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-115562097-null-null.142^v99^pc_search_result_base6&utm_term=%E9%99%88%E5%AD%90%E9%9D%92-see&spm=1018.2226.3001.4187
解决方法(两种方法都试过,都可以解决)
治标不治本解决方法:打开下载好MySQL对应的lib目录,将对应的libmysql.dll复制到对应VS项目x86Debug目录下,与生成的可执行文件放到一起如F:\C++_Project\MySQLConnect\x64\Debug
一劳永逸的解决方法:打开下载好MySQL对应的lib目录,将对应的libmysql.dll复制到C:\Windows\System32下,重启电脑,以后VS工程都可以找到这个动态链接库文件
#include <iostream>
#include <mysql.h>
using namespace std;const char* host = "127.0.0.1";//主机ip,回环地址,表示本机
const char* user = "root"; //用户
const char* pwd = ""; //登录数据库的密码
const char* datanbaseName = "test"; //数据库名字
const int port = 3306;
//封装的结构体,面对对象就是实体类
struct User {string name;int age;
};int main()
{//初始化连接对象MYSQL* con = mysql_init(NULL);//设置编码mysql_options(con,MYSQL_SET_CHARSET_NAME, "GBK");//设置连接if (!mysql_real_connect(con, host, user, pwd, datanbaseName, port, NULL, 0)){cout << "数据库链接失败" << endl;cout << "错误原因为:" << mysql_error(con) << endl;return -1;}User user;user.name = "小明";user.age = 15;//编写sql语句char sql[256];//sprintf在VS下会报错,需要使用这个才行与scanf一样,在VS要scanf_ssprintf_s(sql, "insert into user (name,age) values('%s',%d)",user.name.c_str(), user.age);//执行sql事务,成功返回0,失败非0if (mysql_query(con, sql)){cout << "数据增加失败" << endl;cout << "错误原因为:" << mysql_error(con) << endl;return -1;}//关闭链接mysql_close(con);return 0;
}
运行结果