这个MySQL UPDATE语法有什么问题?

时间:2015-10-28 16:08:17

标签: mysql

SET @currentID = (SELECT MIN(ExperimentID) FROM Jobs_t WHERE JobStatus = 'ToRun');
UPDATE [Jobs_t]
SET [JobStatus] = 'Pending'
WHERE ExperimentID = @currentID;
SELECT @currentID

Jobs_t是一个包含两列,ExperimentID和JobStatus的表。我的SQL语法在第2行UPDATE [Jobs_t]上是错误的,但我似乎无法找出原因。

我将语法更新为:

SET @currentID = (SELECT MIN(`ExperimentID`) FROM `Jobs_t` WHERE `JobStatus` = 'ToRun');
UPDATE `Jobs_t`
SET `JobStatus` = 'Pending'
WHERE `ExperimentID` = @currentID;
SELECT @currentID

但在第二行仍未通过。

完整的错误消息是:

System.Data.Odbc.OdbcException:ERROR [42000] [MYSQL] [ODBC 5.3(a)驱动程序] [mysqld-5.7.9-log]

您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以便在“更新Jobs_t设置JobStatus ='待定'附近使用正确的语法。在哪里`ExperimentID = @currentID; S'在第2行

1 个答案:

答案 0 :(得分:0)

尝试这个作为答案。变化

[Jobs_t]

`Jobs_t`

键盘左上方〜下面的字符。更改括号的所有实例。