gpt4 book ai didi

c++ - MySQL 连接器 C++ 未解析的外部符号

转载 作者:行者123 更新时间:2023-11-29 20:00:02 24 4
gpt4 key购买 nike

我正在 VS 2013 Community Edition 中开发一个项目。它使用 MySQL 连接器 C++。这是一些代码:

数据库.cpp:

#include "Database.h"
#include "Common.h"
#include <iostream>

//This function is used to connect to the MySQL database
void Database::Connect()
{

Config::loadConfig("config.ini");
MySQLSettings settings = Config::getMySQLSettings();

sql::Driver *driver;
sql::Connection *con;
sql::Statement *stmt;
sql::ResultSet *res;

//Creates a connection to your MySQL server
driver = get_driver_instance();
con = driver->connect("tcp://" + settings.host + ":3306", settings.username, settings.password);
//Connect to LUR database
con->setSchema(settings.database);
}

数据库.h:

#pragma once

#include "mysql_connection.h"
#include <cppconn/driver.h>
#include <cppconn/exception.h>
#include <cppconn/resultset.h>
#include <cppconn/statement.h>

class Database
{
public:
static void Connect(); //Database connection function
};

使用该代码,我收到以下错误:

1>Database.obj : error LNK2001: unresolved external symbol __imp__get_driver_instance
1>Database.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall sql::SQLString::SQLString(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_??0SQLString@sql@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>Database.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall sql::SQLString::~SQLString(void)" (__imp_??1SQLString@sql@@QAE@XZ)
1>C:\Users\anon\Desktop\lurebornserver\Source\Release\LURServer.exe : fatal error LNK1120: 3 unresolved externals

最佳答案

  1. 下载 MySQL Connector C++ 源代码。
  2. 添加预处理器定义 CPPCONN_PUBLIC_FUNC=
  3. 配置 MySQL 连接器(您可能需要下载 CMake)
  4. 构建 MySQL 连接器。

请记住将预处理器定义添加到使用 MySQL 连接器的所有文件中。

您还需要下载 MySQL 源代码并构建它。

重建源代码将确保您的编译器和平台与 MySQL 服务器和连接器的兼容性。

关于c++ - MySQL 连接器 C++ 未解析的外部符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40571494/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com