为什么mysql API查询mysql_real_query后,调用mysql_free_result再调用 mysql_store_result会错误呢?

为什么mysql API查询mysql_real_query后,调用mysql_free_result再调用 mysql_store_result会错误呢?,第1张

mysql_real_query查询后返回的结果如果正确,你必须用mysql_use_result或mysql_store_result来接收,调用完内容后用mysql_free_result来释放结果集,就是清零内存,实际上这几个都是指针,你给指针赋值就是将指针知道保存内容的内存首地址,如果你执行了mysql_free_result,实际上就是把mysql_store_result保存结果的那块内存给释放掉,你再store等于把指针指向被释放的内存,肯定返回NULL;

你如果是用mysql_store_result,查询结果已经保存到你的内存了,只要你不free,那么随时可以去调用的,只是记得用mysql_data_seek去把指针指到你想要的位置就行,等所有 *** 作完成后再free就可以了。

mysql_fetch_rows如果为null,表示查询结果没有符合条件的记录,也就是没有结果。

mysql_fetch_rows函数用于从结果集中取得一行作为关联数组、数字数组或者二者兼有,如果没有更多的行则返回null。当查询结果为null时,表示查询结果没有符合条件的记录,也就是没有结果。这时,mysql_fetch_rows函数将返回null值,表示没有更多的行可以取得。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/6105744.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-15
下一篇 2023-03-15

发表评论

登录后才能评论

评论列表(0条)

保存