繁体   English   中英

无法在Visual Studio 2015的C ++程序中链接MySQL

[英]Can't Link MySQL in a C++ Program in Visual Studio 2015

我正在尝试编译一个非常简单的程序,以使用一个简单的数据库表测试我的MySQL安装。 我是MySQL的新手,并且是相对没有经验的程序员,因此它可能是一个非常简单的设置/链接问题:

#include <iostream>
#include <memory>
#include <string> 

#include <cppconn/driver.h>
#include <cppconn/connection.h>
#include <cppconn/resultset.h>

using namespace std;
using namespace sql;

#define DBHOST "tcp://127.0.0.1:3306"
#define USER "root"
#define PASSWORD ""
#define DATABASE "mydb"

int main()
{
Driver *driver;
Connection *con;
Statement *stmt;
ResultSet *res;

std::string user(USER);
std::string dbhost(DBHOST);
std::string password(PASSWORD);

driver = get_driver_instance();
//con = driver->connect(dbhost, user, password);
//con->setSchema(DATABASE);

return 0;
}

我已经安装了最新的MySQL软件包,并在以下位置包含了包含文件和库文件:C:\\ Program Files \\ MySQL \\ Connector.C ++ 1.1 \\ include C:\\ Program Files \\ MySQL \\ Connector.C ++ 1.1 \\ lib \\ opt

我已将上述包含路径添加到“配置属性”中VC + =目录菜单下的“包含目录”中,并将上述库路径添加到了同一选项卡上“库目录”中的上述库路径中。

另外,我在“链接器输入”页面中将mysqlcppconn.lib添加为“其他依赖项”。

编译时出现LNK 2019“函数_main中引用的未解析的外部符号__imp__get_driver_instance”错误...

我怀疑这是我不知道的根本问题!

好。 因此,经过一天的闲逛,我将安装了MySQL的两个位置(默认的Program Files目录和Program Files(x86)目录)的头文件和库都移到了MySQL / include和MySQL / lib以及我的项目目录中的MySQL(x86)/ include和MySQL(x86)/ lib。

我尝试在Visual Studio 2015中的各个位置依次链接到这些文件。该程序已编译链接到x86版本。

我唯一没有意识到的是,我需要项目的运行目录中的mysqlcppconn.dll才能正确加载。 一旦我搜索了这个程序,程序就会加载并成功运行!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM