mysql_fetch_field获取变量的名称和类型

c++ mysql_fetch_field get variables name and type

本文关键字:类型 变量 fetch field 获取 mysql      更新时间:2023-10-16

我试图在向量中插入表中变量的名称和类型。我使用的语言是c++。

下面是我的代码:

    std::vector<std::string> parameters;
    std::vector<std::string> types;
    request = "select * from " + table;
    //cout << request << endl;
    if(mysql_query(connection, request.c_str())){
    fprintf(stderr, "Impossible to get parameters: %sn",
        mysql_error(connection));
    return EXIT_FAILURE;
    }
    result = mysql_store_result(connection);
    while (field_mysql=mysql_fetch_field(result)) {
        parameters.push_back(field_mysql->name);
        types.push_back(field_mysql->type);
        }
    for(vector<string>::iterator it = parameters.begin(); it != parameters.end(); it++) 
        cout << *it << endl;
    mysql_free_result(result);

我得到的错误:

没有匹配的函数调用std::vector::push_back(enum_field_type &)'

我认为我得到了这个错误,因为类型是整数,我声明它为字符串,但我不确定

"我想我得到了这个错误,因为类型是整数,我声明它为字符串,但我不确定。"

你完全正确。只要把types设置为整数的容器,问题就解决了。