我想在Zend Framework 1.5中使用ON DUPLICATE KEY UPDATE
,这可能吗?
实例
INSERT INTO sometable (...)
VALUES (...)
ON DUPLICATE KEY UPDATE ...
我想在Zend Framework 1.5中使用ON DUPLICATE KEY UPDATE
,这可能吗?
实例
INSERT INTO sometable (...)
VALUES (...)
ON DUPLICATE KEY UPDATE ...
我为Zend工作,特别是为Zend_Db工作了不少.
不,ON DUPLICATE KEY UPDATE
语法没有API支持.在这种情况下,您只需使用query()
并自己形成完整的SQL语句.
我不建议像harvejs所显示的那样在SQL中插入值.使用查询参数.
编辑:使用VALUES()
个表达式可以避免重复参数.
$sql = "INSERT INTO sometable (id, col2, col3) VALUES (:id, :col2, :col3)
ON DUPLICATE KEY UPDATE col2 = VALUES(col2), col3 = VALUES(col3)";
$values = array("id"=>1, "col2"=>327, "col3"=>"active");