【发布时间】:2011-06-08 19:44:17
【问题描述】:
我正在使用带有 PHP 5.3 的 Pear MDB2。我正在编写一个更新数据库的项目,在我让它开始更改数据之前,我想在实际执行它们之前看看 autoPrepare() 和 execute() 生成的 SQL 查询是什么样的。
我计划像这样创建并执行更新查询:
$stmt = $db->extended->autoPrepare($tableName, $tableColumns,
MDB2_AUTOQUERY_UPDATE, 'id = ' . $db->quote(12345, 'integer'),
$tableColumnTypes));
$res =& $stmt->execute($tableColumnValues);
我已经知道,通过访问$stmt->query,我可以看到autoPrepare() 生成的带有占位符的SQL。我希望看到由 execute() 生成的完整 SQL,用值替换占位符,实际上没有将查询发送到数据库。
我该怎么做?
【问题讨论】: