我在执行UPDATE语句时遇到问题。
UPDATE vehicles2 SET limit = @newlimit WHERE model = @vehiclenew
错误:
ER_PARSE_ERROR:您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册以获取正确的语法,以在第1行的'limit = 1 WHERE model ='crf450r'附近使用
有人可以帮我吗?
答案 0 :(得分:2)
LIMIT
是保留的MariaDB / MySQL关键字,因此,如果您的vehicles2
表中确实包含具有该名称的列,则必须使用反引号对其进行转义:
UPDATE vehicles2
SET `limit` = @newlimit
WHERE model = @vehiclenew;
最好的解决方法是实际上不调用您的column / tables / etc。使用关键字。将limit
更改为其他内容。
答案 1 :(得分:1)
Limit是保留关键字,用于限制查询中要返回的记录数。如果您的表中有一个名为LIMIT的列,或与此主题匹配的任何其他名称,则必须在该列名周围使用限定符,以便数据库引擎知道它实际上是列名而不是关键字。 将您的列名用反引号括起来,应该可以。
UPDATE vehicles2 SET `limit` = @newlimit WHERE `model` = @vehiclenew
答案 2 :(得分:0)
如果仍然存在任何问题,请尝试下面的代码,让我知道。
DECLARE @newlimit INT,
@vehiclenew VARCHAR(100)
SET @newlimit= put your values here ,
@vehiclenew='put Your values'
UPDATE vehicles2
SET `limit` = @newlimit
WHERE `model` = @vehiclenew