在Xcode中使用C++我尝试使用MySQL Connector/C++访问MySQL数据库.问题是该程序(使用Xcode编译)总是崩溃
EXC_BAD_ACCESS (code=13, address=0x0)
Run Code Online (Sandbox Code Playgroud)
在打电话时
driver->connect(url, user, pass)
Run Code Online (Sandbox Code Playgroud)
在Xcode中我创建了一个完整的新项目(OS X>命令行工具),在main.cpp中插入代码(见下文),添加了Boost和MySQL Connector头包含路径以及libmysqlcppconn.6.1.1.1.dylib作为Link库并点击"运行"按钮.
接下来的事情是,当我手动编译程序时
c++ -o test -I /usr/local/mysqlConnector/include/ -lmysqlcppconn main.cpp
Run Code Online (Sandbox Code Playgroud)
程序运行正常,并在表上运行INSERT语句.
程序代码取自MySQL Connector/C++示例,即pthreads.cpp示例,但截断为基本部分:
/* Standard C++ includes */
#include <stdlib.h>
#include <iostream>
#include <sstream>
#include <stdexcept>
#include <mysql_connection.h>
#include <mysql_driver.h>
#include <cppconn/driver.h>
#include <cppconn/exception.h>
#include <cppconn/resultset.h>
#include <cppconn/statement.h>
std::string url;
std::string user;
std::string pass;
std::string database;
/**
* Usage example for Driver, Connection, (simple) Statement, ResultSet
*/
int main(int argc, const char **argv)
{
sql::Driver *driver;
std::auto_ptr< sql::Connection > con; …Run Code Online (Sandbox Code Playgroud)