一尘不染

MySQL LIMIT on DELETE语句

mysql

我针对最近遇到的错误整理了一个测试表。尝试从MySQL表中删除单个记录时,它涉及使用LIMIT。

我所说的错误是“ 您的SQL语法有错误;请查看与您的MySQL服务器版本相对应的手册,以找到在第1行的’LIMIT 1’附近使用的正确语法

我整理的桌子叫做 测试 ; 它有3列, idnamecreated
。我用几条记录填充了表,然后尝试删除一条。以下是我用来尝试完成此操作的语句。

DELETE t FROM test t WHERE t.name = 'foo' LIMIT 1

如果不使用LIMIT 1,则该语句执行得很好,但是如果不需要它,我当然不会使用LIMIT。

我完全知道,我可以使用另一条语句成功完成此DELETE。见下文: DELETE FROM test WHERE name = 'foo' LIMIT 1

但是我的问题集中在为什么第一个语句不能与LIMIT一起使用。

所以我的问题是,对于产生此错误的第一条语句,我做错了什么?


阅读 648

收藏
2020-05-17

共1个答案

一尘不染

删除查询仅允许在DELETE“命令”之后使用修饰符,以告知数据库处理内容的方式。

看到这个页面

2020-05-17