0
我想在向量中插入我的表中变量的名称和类型。我使用的语言是C++。C++ mysql_fetch_field获取变量名称和类型
这里是我的代码:
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: %s\n",
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的<的std :: basic_string的<焦炭> ::的push_back(enum_field_types没有匹配的功能&)'
我想我得到这个错误,因为类型是整数,我声明它为字符串,但我不确定。
是的,这就是原因。您可以通过实现将枚举转换为字符串的函数来修复它,也就是说,如果您的目标是打印它。 – didierc 2013-03-19 16:24:12