【发布时间】:2011-09-01 00:03:29
【问题描述】:
我为最近遇到的一个错误整理了一个测试表。它涉及在尝试从 MySQL 表中删除单个记录时使用 LIMIT。
我所说的错误是“您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 'LIMIT 1' 附近使用正确的语法 "
我放在一起的表叫做test;它有 3 列,id、name 和 created。我用几条记录填充了表格,然后尝试删除一条。以下是我用来尝试完成此操作的语句。
DELETE t FROM test t WHERE t.name = 'foo' LIMIT 1
如果不使用 LIMIT 1,语句执行得很好,但如果不需要,我当然不会使用 LIMIT。
我完全清楚我可以使用另一个语句来成功完成此 DELETE。见下文:
DELETE FROM test WHERE name = 'foo' LIMIT 1
但是我的问题集中在为什么第一个语句不适用于 LIMIT。
所以我的问题是,关于第一条语句我做错了什么来产生这个错误?
【问题讨论】:
标签: mysql limit sql-delete