将MySQL与C ++集成的简单解决方案?

时间:2012-07-13 06:58:28

标签: c++ mysql database integration

在C ++中使用简单的MySQL数据库连接有什么解决方案? 我发现dev.mysql.com中的MySQL Connector很难集成。

期待的感谢!

2 个答案:

答案 0 :(得分:2)

从C / C ++应用程序与MySQL进行通信非常简单

你需要包含mysql.h头文件

连接和执行查询的三个基本API

mysql_connect()函数

的mysql_query()

mysql_close()

与mysql库(libMysql)链接

答案 1 :(得分:0)

您可以使用支持库尝试ODBC路径。

一年前,我使用OTL来连接SqlServer并发现它很有效。现在我尝试连接MySql,到目前为止没有任何问题:

#include <otlv4.h>
#include <iostream>
using namespace std;

int otl_x_sql_main(int argc, char **argv)
{
    otl_connect db; // connect object
    otl_connect::otl_initialize(); // initialize ODBC environment
    try {
        db.rlogon("DRIVER=mysql;DB=...;UID=...;PWD=..."); // connect to ODBC

        // parametrized SELECT
        otl_stream i(50, "SELECT product_id,model FROM product WHERE product_id >= :f<int> AND product_id < :ff<int>", db);

        int product_id;
        char model[100];

        i << 1000 << 2000; // assigning product_id range

        // SELECT automatically executes when all input variables are assigned
        while (!i.eof()) {
            i >> product_id >> model;
            cout << "product_id=" << product_id << ", model=" << model << endl;
        }
    }
    catch(otl_exception& p) {       // intercept OTL exceptions
        cerr << p.msg << endl;      // print out error message
        cerr << p.stm_text << endl; // print out SQL that caused the error
        cerr << p.sqlstate << endl; // print out SQLSTATE message
        cerr << p.var_info << endl; // print out the variable that caused the error
    }

    return 0;
}