尚未设置Zend db更新值

时间:2012-07-10 18:43:05

标签: mysql database zend-framework

我不确定此更新调用缺少什么,这是我的代码:

$table = new Application_Model_DbTable_ProductContaminant();
$db = $table->getAdapter();

$db->getProfiler()->setEnabled(true);
$data = array('value' => '999');
$where[] = $db->quoteInto('product_id = ?', $q['product_id']);
$where[] = $db->quoteInto('contaminant_id = ?', $k);
$table->update($data, $where);

print $db->getProfiler()->getLastQueryProfile()->getQuery();

分析器输出为:

UPDATE `product_contaminants` SET `value` = ? WHERE (product_id = '4802') AND (contaminant_id = 69)

为什么不填充“价值”?

1 个答案:

答案 0 :(得分:2)

未填充值,因为getQuery仅返回带参数占位符的预准备语句。如果您想要更新时使用的参数,请尝试以下方法:

$db->getProfiler()->getLastQueryProfile()->getQueryParams()

更多信息here