浅谈mysql_query()函数的返回值问题

问题描述:

我在操作mysql,插入数据时,关闭资源,PHP提示了一个warning。内容大致为,需要给mysql_free_result()一个资源类型。

然后,我将返回的结果var_dump($res),发现是bool值

分析:

看手册时,一眼看上去,觉得mysql_query()函数返回的本来就是资源类型,可是为什么现在又是bool值了呢?好吧,耐心看完手册,才发现,原理是这样的,如下图片:

浅谈mysql_query()函数的返回值问题

总结:由上可以知道,mysql_query()执行sql语句时,并不是什么时候都要执行释放结果集,而是当某些操作产生了结果集,才调用mysql_free_result()释放;像insert   update这种返回bool值的就不需要了,否则画蛇添足

相关推荐