PDF(美国LTR)- 1.1MB.
PDF(A4)- 1.1MB.
HTML下载(TGZ)- 147.1KB.
HTML下载(ZIP)- 156.9KB.
unsigned int mysql_field_count(mysql * mysql)
返回连接上最新查询的列数。
此功能的正常使用是什么时候mysql_store_result()
回空值
(因此您没有结果集指针)。在这种情况下,您可以打电话mysql_field_count()
确定是否mysql_store_result()
应该产生一个非空的结果。这使客户端程序能够在不知道查询是否为a的情况下采取适当的操作选择
(或者选择
-like)声明。这里所示的示例说明了如何完成这一点。
mysql_res *结果;unsigned int num_fields;unsigned int num_rows;if(mysql_query(&mysql,query_string)){//错误} else //查询成功地处理它返回的任何数据{结果= mysql_store_result(&mysql);if(结果)//存在行{num_fields = mysql_num_fields(结果);//检索行,然后调用mysql_free_result(结果)} else // mysql_store_result()返回什么;它应该有吗?{if(mysql_field_count(&mysql)== 0){//查询不返回数据//(它不是选择)num_rows = mysql_affected_rows(&mysql);} else // mysql_store_result()应该返回数据{fprintf(stderr,错误:%s \ n“,mysql_error(&mysql));}}}
另一种选择是取代mysql_field_count(&mysql)
打电话mysql_errno(&mysql)
。在这种情况下,您正在直接检查错误mysql_store_result()
而不是从价值推断mysql_field_count()
声明是一个选择
。