MySQL 8.0 C API 开发者指南  / 第 3 章编写基于 C API 的客户端应用程序  / 3.6 使用 C API 特性  /  3.6.9 mysql_query()成功后返回NULL mysql_store_result()

3.6.9 mysql_query()成功后返回NULL mysql_store_result()

可以 使用 或在成功调用服务器mysql_store_result()后返回 。发生这种情况时,表示发生了以下情况之一: NULLmysql_real_query()mysql_query()

  • 出现malloc()故障(例如,如果结果集太大)。

  • 无法读取数据(连接发生错误)。

  • 查询未返回任何数据(例如,它是 INSERTUPDATEDELETE)。

您始终可以通过调用 来检查该语句是否应该产生非空结果 mysql_field_count()。如果 mysql_field_count()返回零,则结果为空,最后一个查询是不返回值的语句(例如, an INSERT或 a DELETE)。如果 mysql_field_count()返回一个非零值,该语句应该产生一个非空结果。mysql_field_count()有关示例 ,请参见函数的描述 。

mysql_error()您可以通过调用或 来测试错误 mysql_errno()