php - 免费结果集数据 mysqli_result::free

标签 php mysql

根据我的研究,我了解到应该在操作/使用查询数据后释放结果集数据。我正在尝试在以下代码上下文中使用 mysqli_result::free pdo:

if ($result) 
   { $change = $result[0][9];
 $change = $change+1;
 $sql='UPDATE users SET visits = :visit WHERE username = :username';
 $q=$dbh->prepare($sql);
 $q->bindValue(':username',$username,PDO::PARAM_STR);
 $q->bindValue(':visit',$change,PDO::PARAM_INT);
 $q->execute();
  // initiate SESSION and Set USER SESSION Variables through the  --session_handler.php
require ('./includes/session_handler.php');
//Free the Query Result set to free memory on the database handler
$result->free();
// direct registered users to MEMBER_ZONE.php for registered users interface
header('Location: member_zone.php');    
                                exit(); 
   }

我收到消息: fatal error :在...中调用未定义的方法 PDOStatement::free()

我研究过 http://php.net/manual/en/mysqli-result.free.php以及在谷歌上,没有找到进一步阐明其应用的示例代码。

在这个网站上的例子:mysqli_result::free increase php memory usage 这里令人困惑:不应该在这段代码中释放 $row 吗?

这里Are mysqli_result::free and mysqli_stmt::free_result the same?

这里结合使用了free_result()free()两种形式。

我似乎找不到我的错误或明确的用法示例。我将不胜感激任何意见。

最佳答案

似乎我在结果上使用了 $q->free(),但结果从未出现,因为我正在更新数据库,而不是请求结果。语法似乎被正确使用。这是我认为错误的使用顺序。

关于php - 免费结果集数据 mysqli_result::free,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32104988/

相关文章:

php - Docker 运行 php : Interactive shell

php - fclose() : 18 is not a valid stream resource

php - 使用引导验证器检查重复的 mysql 数据

php - 类 Facebook 消息的数据库设计

php - 搜索行数较少的表与搜索行数较多的表相比

php - 使用 PDO MySQL 搜索多个表单字段进行分页

mysql - 对来自 2 个不同列的 Union 结果使用 Order By 和 Group by

php - 无法使用 adodb 将字符串传递给 MySQL 存储过程

mysql - 从按列值排序的表中获取记录

php - <br> 存储在 mysql 字段中,但回显时没有换行符