Mysql 以另一种方式打印记录
有没有一种方法可以使用C直接在Mysql中显示查询的内容 我的意思是: 如果我键入,则通过mysql shell:从表_name中选择*;我以整洁和格式化的方式获得查询结果 如果我想用Api C做同样的事情,我必须写几行代码,最终的结果远远不是很好,至少这是我个人的经验 例如:Mysql 以另一种方式打印记录,mysql,c,Mysql,C,有没有一种方法可以使用C直接在Mysql中显示查询的内容 我的意思是: 如果我键入,则通过mysql shell:从表_name中选择*;我以整洁和格式化的方式获得查询结果 如果我想用Api C做同样的事情,我必须写几行代码,最终的结果远远不是很好,至少这是我个人的经验 例如: void display_Table1(MYSQL *conn) { int jj,ii; char query[512]; sprintf(query, "SELECT * FRO
void display_Table1(MYSQL *conn)
{
int jj,ii;
char query[512];
sprintf(query, "SELECT * FROM Table1 ;");
if (mysql_query (conn, query)) {
printf("\nErrore query:\n");
printf("%s", mysql_error(conn),"\n");
result = mysql_store_result(conn);
if (result) {
num_rows = mysql_num_rows(result);
num_fields =mysql_num_fields(result);
//printf("Number of rows=%u Number of fields=%d \n", num_rows,num_fields);
//printf(" ");
}
else
{
printf("Result set is empty");
}
// Print column headers
fields = mysql_fetch_fields(result);
for(jj=0; jj < num_fields; jj++)
{
printf("\n%s\t\t",fields[jj].name);
}
printf("\n\t ");
// print query results
while(row = mysql_fetch_row(result)) // row pointer in the result set
{
for(ii=0; ii < num_fields; ii++)
{
printf("%s\t", row[ii] ? row[ii] : "NULL"); // Not NULL then print
}
printf("\n");
}
if(result)
{
mysql_free_result(result);
result = NULL;
}
}
}
那是一个很难解决的问题。我以垂直的方式一个接一个地得到标题
我也有
命令不同步;现在无法运行此命令
首先,没有直接的方法打印出格式化的显示器。你所能做的就是使用它
MYSQL_FIELD *field = mysql_fetch_field (resultset);
col_len = field->max_length;
if(col_len < strlen(field->name))
col_len = strlen(field->name);
找出列的最大宽度,以及相应的数据间距