如何删除zend framework查询中的行?

balp4ylt  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(238)

我需要在zendframework1中执行一个带有限制的删除查询
这是我的mysql查询

DELETE FROM TABLE1
WHERE USER =  '123'
LIMIT 1

这是我的zend查询

$this->_dbObj->delete('table1', "USER = ?" , 123, "LIMIT ?",1);

但这个查询似乎不起作用。有人能帮忙吗?谢谢

hs1rzwqc

hs1rzwqc1#

首先,您当前的delete查询没有多大意义,因为您正在使用 LIMIT 1 没有一个 ORDER BY 条款。理想情况下,您应该告诉mysql您要删除哪些可能的匹配记录:

DELETE FROM TABLE1
WHERE USER = '123'
ORDER BY some_col
LIMIT 1

你可以试着用 quoteInto 在这里:

$sql = "DELETE FROM TABLE1 WHERE USER = ? ORDER BY some_col LIMIT 1";
$query = $this->_dbObj->quoteInto($sql, 123);
$this->_dbObj->query($query);

相关问题