我一直$stmt在我的PHP脚本中重用相同的变量来编写预处理语句:
$stmt = $dbh->prepare("SELECT column_A FROM Table1 WHERE id=?");
$stmt->bindValue(1, $id, PDO::PARAM_INT);
$stmt->execute();
....
$stmt = $dbh->prepare("UPDATE Table2 SET column_B=? WHERE column_A=?");
$stmt->bindValue(1, $name);
$stmt->bindValue(2, $column_A);
$stmt->execute();
Run Code Online (Sandbox Code Playgroud)
我的问题是,我怎么知道这两个语句是否被写入缓存并且第二个语句没有覆盖第一个语句,尽管两个语句共享相同的变量名?
语句是由数据库引擎而不是 PHP 准备的,请参阅:
因此,在 PHP 中重复使用相同的变量名不会使 MySQL 准备“缓存”失效。
| 归档时间: |
|
| 查看次数: |
353 次 |
| 最近记录: |