PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别 |
虽然nosql变得流行,但是我感觉sql还是主流 复制代码 代码如下: @mysqli_query($this->sql,$SQL,($method ? MYSQLI_USE_RESULT : MYSQLI_STORE_RESULT)); 在php manul上面对这两个参数是这样解释的 。 复制代码 代码如下: Either the constant MYSQLI_USE_RESULT or MYSQLI_STORE_RESULT depending on the desired behavior. By default, MYSQLI_STORE_RESULT is used. 如果什么也不传,那就默认为MYSQLI_STORE_RESULT 。 在phpmanul上面有人说了这样一句话If we have to retrieve large amount of data we use MYSQLI_USE_RESULT 其实这两个参数的区别还是很大的 。 (1)区别在于从服务器上检索结果集的行 。 总结 与MYSQLI_USE_RESULT相比,MYSQLI_STORE_RESULT 有着较高的内存和处理需求,因为是在客户机上维护整个结果集,所以内存分配和创建数据结构的耗费是非常巨大的,如果想一次检索多个行,可用 MYSQLI_USE_RESULT 。 MYSQLI_USE_RESULT有着较低的内存需求,因为只需给每次处理的单行分配足够的空间 。这样速度就较快,因为不必为结果集建立复杂的数据结构 。另一方面,MYSQLI_USE_RESULT把较大的负载加到了服务器上,它必须保留结果集中的行,直到客户机看起来适合检索所有的行 。 |