无法使MySQL Connector / C ++工作 - 未处理的异常(sql :: SQLException)Visual Studio 2010

时间:2015-10-09 15:37:16

标签: c++ mysql visual-studio-2010 boost connector

所以我一直试图获得与MySQL数据库的基本连接几天,我已经尝试了各种方式似乎可以使MySQL Connector / C ++工作。到目前为止,这是我的代码:

#include <iostream>
#include <mysql_driver.h>

int main(){
    sql::mysql::MySQL_Driver *driver;
    sql::Connection *con;

    driver = sql::mysql::get_mysql_driver_instance();
    con = driver->connect("http://localhost/", "root", "");

    delete con;

    return 0;
}

我正在使用MSVS2010,MySQL Connector / C ++ 1.1.6,Boost 1.5.9 我有正确的包含,库以及为连接器设置的链接器。我还包括了提升1.5.9。

当我编译并执行时,我每次都会得到同样的错误:

Unhandled exception at 0x75d9c42d in MySQL Test.exe: Microsoft C++
exception: sql::SQLException at memory location 0x0041f140..

这是调用堆栈:

>   MySQL Test.exe!__tmainCRTStartup()  Line 555 + 0x17 bytes   

以下是相关代码:

550    #ifdef WPRFLAG
551        __winitenv = envp;
552        mainret = wmain(argc, argv, envp);
553    #else  /* WPRFLAG */
554        __initenv = envp;
555        mainret = main(argc, argv, envp);
556    #endif  /* WPRFLAG */

我已经尝试重新安装MySQL服务器及其组件,以及连接器本身,并且我在与发布版目录相同的目录中使用了正确的.dll。

我正在尝试连接到WAMP服务器,但我不认为它与错误特别相关。

我也尝试过不同版本的MSVS,包括2008年和2013年。我不知道问题是什么,似乎没有任何解决方案可以解决这个问题。

我想尝试使用CMake自己从源代码构建MySQL Connector / C ++,但我不知道从哪里开始,我不想花更多的时间漫无目的地朝着错误的方向前进。 / p>

任何帮助都会非常感激,因为我花了很多时间来解决这个问题。

1 个答案:

答案 0 :(得分:0)

最后我设法让它工作,但不是使用MySQL Connector / C ++我必须使用MySQL Connector / C,这是第一次工作,没有任何问题。