我有以下语句需要SQL变量:
SELECT @i := 53; UPDATE my_table SET index = (SELECT @i := @i + 1), status = 0 WHERE id = '12345' ORDER BY seqindex ASC;
由于某种原因,当我在MySQL的工作台上执行它时,它工作正常,但是当我在Java中执行它时,它却失败了。我得到org.springframework.jdbc.BadSqlGrammarException。
任何帮助将不胜感激。
最佳答案
使用单引号将表名或列名加下划线,例如“ my_table”
SELECT @i := 53; UPDATE 'my_table' SET index = (SELECT @i := @i + 1),
status = 0 WHERE id = '12345' ORDER BY seqindex ASC;
关于java - 在Java中执行时,使用@variable的SQL语句失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37404325/