在VS Code中将mysql连接到c++,编译成功但未运行



我是数据库新手,所以我想在Windows 10中使用VS Code中的c++在mysql中执行简单查询。上次我在链接库时遇到了问题,现在看来我设法修复了它们。通过添加我的系统配置,我从另一个源获取了以下代码:

#include <iostream>
#include <windows.h>
#include "C:/Program Files/MySQL/MySQL Server 8.0/include/mysql.h"
int main(){
MYSQL* conn;
conn = mysql_init(0);
conn = mysql_real_connect(conn, "localhost", "root", "password", "project", 0, NULL, 0);
if(conn){
std::cout << "Connected" << std::endl;
} else {
std::cout << "Not connected" << std::endl;
}
}

当我用g++ main.cpp -Wall -Werror -I "C:/Program Files/MySQL/MySQL Server 8.0/include" -L "C:/Program Files/MySQL/MySQL Server 8.0/lib" -lmysql命令编译它时,它编译时没有报告任何错误。但是,如果我尝试运行它,程序就会终止。我不明白会有什么问题。我怀疑问题可能是mysql连接器,但正如我说我是新的,所以我仍然有疑问。因此,如果您能告诉我下一步该怎么做,我将不胜感激。

我寻找了类似的问题,他们只帮助我链接到库。

修复。只需要将libmysql.dll添加到main.cpp文件的文件夹中。谢谢大家的建议。

mysql_init可以返回NULL:

一个初始化的MYSQL*处理程序。

如果没有足够的内存来分配一个新的对象。

在第二次调用之前检查它的值不是更安全吗?

最新更新