我试图根据条件从数据库中删除记录。查询非常简单,但我仍然得到奇怪的结果。我想在 ZF 做什么:
$where = array(
$db->quoteInto('name = ?', $name),
$db->quoteInto('surname = ?', $surname)
);
$db->delete('users', $where);
在尝试调试时,我得到:
DELETE FROM `users` WHERE (name = 'John') AND (surname = 'Johnson')
什么是正确且有效的 SQL 语句。但后来我的价值观被剥夺了,所以我得到这样的查询:
DELETE FROM `users` WHERE (name = ) AND (surname = )
根据调试结果,这发生在Zend_Db_Statement
类(Statement.php)、_stripQuoted
方法中。
因此,最终结果不是删除了一条记录,而是清除了整个表。
我已经将文档和 Google 搜索到了与我的情况非常接近的示例。所以我不明白这有什么问题?
Zend 框架版本:1.12
有任何想法吗?