我正在使用 c++ 开发 MySql 应用程序。我无法打印我的 MySQL 表中的所有记录。下面的代码只是打印第一列的数据。
MYSQL *conn= mysql_init(NULL);
MYSQL_RES *res; /* holds the result set */
MYSQL_ROW row;
if(mysql_real_connect(conn, "xx.1x3.1xx.7x", "ixxx", "00000000", "xxx", 0, NULL, 0)){
char q[1000];
mysql_query(conn, "select id FROM user");
res = mysql_store_result(conn);
int num_fields = mysql_num_fields(res);
while ((row = mysql_fetch_row(res)))
{
// Print all columns
for(int i = 0; i < num_fields; i++)
{
// Make sure row[i] is valid!
char *val = row[i];
std::cout << row[i][1] << std::endl;
//std::cout << "NULL" << std::endl;
// Also, you can use ternary operator here instead of if-else
// cout << row[i] ? row[i] : "NULL" << endl;
}
}
}