【问题标题】:C++ write and read from mysql databaseC ++从mysql数据库写入和读取
【发布时间】:2011-10-08 16:07:51
【问题描述】:

我正在做一个项目,我们想写入一个 mysql 数据库,我用谷歌搜索并尝试了一些实现,但都失败了。

例如我试过这个:http://markalexanderbain.suite101.com/using-a-mysql-databases-with-c-a70097

#include "StdAfx.h"
#include <iostream>
#include <my_global.h>
#include <mysql.h>
#pragma comment(lib, "libmysql")
#pragma comment(lib, "mysqlclient")
using namespace std;

MYSQL *connection, mysql;
MYSQL_RES *result;
MYSQL_ROW row;
int query_state;

int main() 
{mysql_init(&mysql);
//connection = mysql_real_connect(&mysql,"host","user","password","database",0,0,0);
connection = mysql_real_connect(&mysql,"localhost","bainm","not_telling","cpp_data",0,0,0);
if (connection == NULL) 
cout << mysql_error(&mysql) << endl;
return 1;
}

它编译并生成一个exe文件,但每次我尝试运行它时它都会关闭,我在最后添加了一个cin.get所以它不会关闭。

但程序仍然关闭,Visual Studio 2010 给我以下错误消息:程序“[32856] mysql test.exe: Native”已退出,代码为 -1073741515 (0xc0000135)。

所有这些实现中唯一的共同点是包含文件和#pragma comment(lib, "libmysql") 和#pragma comment(lib, "mysqlclient") 我正在使用 mysql ga 5.5.16 32 位中包含的这些文件。

所以我正在寻找一种写入 mysql 数据库的方法,如果有人知道如何解决此问题以使其正常工作或通过教程知道另一种方法,请告诉我。

【问题讨论】:

    标签: c++ mysql database windows


    【解决方案1】:

    错误代码 0xc0000135 表示“应用程序无法正确初始化”。这几乎可以肯定是由于缺少一个(或两个)DLL;可能是您的#pragma lib 语句中提到的与 MySQL 相关的那些。

    要么将它们添加到您的路径中,要么将它们复制到与 .exe 相同的目录中。

    编辑:遵循here 的说明,以便使用正确的选项进行编译。文件mysqlclient.dll 应该包含在 MySQL 安装中(如果找不到,请查找系统文件)。

    【讨论】:

    • 谢谢,但是我找不到 mysqlclient.dll 有谁知道我在哪里可以找到它?
    • 是的,如果您静态链接到库。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-26
    相关资源
    最近更新 更多