我正在使用 pdo,并且尝试删除日期(过期)小于当前日期的记录。实际上,我制作了一个自动绑定(bind)值的小 pdo 包装器,这就是语句:
DELETE FROM auth_tokens WHERE expires < :currentTime;"
我将表名、wehre 子句和绑定(bind)参数传递给删除函数,特别是:
public function delete($table, $where, $bind = "")
{
$sql = "DELETE FROM " . $table . " WHERE " . $where . ";";
$this->run($sql, $bind);
}
run 函数将绑定(bind)数据并执行语句:
binding result: [":currentTime"]=> string(27) "09-12-2016 21:21:56.7358640"
问题是没有记录被删除。您如何看到我正在尝试删除过期时间小于当前时间的所有记录:09-12-2016 21:21:56.7358640
为什么?
最佳答案
如果您使用标准 DATETIME
数据类型,则您的日期格式似乎不正确。尝试将其格式化为 YYYY-MM-DD HH:MM:SS
。
关于php - 删除语句不删除记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41068399/