我试图调用查询:
UPDATE questions
SET 1 = 4
WHERE questionid = 4;
但我一直收到SQL语法错误。我的表中有一列名为' 1',我想将列值设置为整数4.我尝试了其他一些查询(下面),但我仍然是同样的错误。
UPDATE questions
SET '1' = 4
WHERE questionid = 4;
UPDATE questions
SET '1' = 4
WHERE 'questionid' = 4;
UPDATE questions
SET "1" = 4
WHERE questionid = 4;
UPDATE questions
SET "1" = 4
WHERE "questionid" = 4;
我尝试使用Statement java API中的executeUpdate()方法在java中执行此查询。
我知道有些人会建议我使用PerformedStatement而不是常规Statement来构建查询,我会做,一旦我弄清楚为什么我的查询不接受1是列名而不是一个整数。
答案 0 :(得分:2)
在列名称周围使用反引号:
UPDATE questions
SET `1` = 4
WHERE questionid = 4;
考虑重命名专栏。
答案 1 :(得分:1)
尝试以下方法:
UPDATE questions
SET [1] = 2 -- int
WHERE QuestionID = 1;