MYSQL_RES * mysql_stmt_result_metadata (MYSQL_STMT *支撑)
mysql_stmt_result_metadata ()
用于获取结果集的元数据。其使用要求语句执行时mysql_stmt_execute ()
并产生一个结果集。
mysql_stmt_result_metadata ()
可称为准备语句之后mysql_stmt_prepare ()
在关闭之前声明处理程序。返回的结果集的元数据mysql_stmt_result_metadata ()
是一个指针的形式MYSQL_RES
结构,可用于过程等元信息的字段和单独的字段信息。这个结果集指针可以作为参数传递给任何实地API函数的过程结果集元数据,如:
当你完成了结果集的元数据结构,它通过自由mysql_free_result ()
。这类似于你自由的方式从调用获得的结果集的结构mysql_store_result ()
。
如果你叫mysql_stmt_result_metadata ()
后mysql_stmt_prepare ()
但在mysql_stmt_execute ()
、列类型的元数据是由优化器决定。如果你叫mysql_stmt_result_metadata ()
后mysql_stmt_execute ()
实际上,元数据的列类型出现在结果集。在大多数情况下,这些应该是一样的。
如果执行语句调用
声明中,它可能会产生多个结果集。在这种情况下,没有电话mysql_stmt_result_metadata ()
后立即mysql_stmt_prepare ()
。相反,后分别检查每个结果集的元数据调用mysql_stmt_execute ()
。该技术的一个示例,请参阅3.5.4节”,准备叫声明支持”。
返回的结果集mysql_stmt_result_metadata ()
只包含元数据。它不包含任何一行的结果。获取行结果,使用声明处理程序mysql_stmt_fetch ()
后执行的语句mysql_stmt_execute ()
,像往常一样。
内存不足。
一个未知的错误发生。