无法更新MySQL数据库中的字段

时间:2012-01-26 13:44:54

标签: mysql

我一直在尝试更新MySQL数据库中的字段,但是我收到了错误。

这是我的查询

UPDATE tbl SET fl1="val",fl2="val", fl3="val" WHERE fl0="val val"

这是我尝试执行查询时收到的错误

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'val WHEREfl0="val val"' at line 1

我已从查询中删除了信息,并将其替换为虚拟文本。

4 个答案:

答案 0 :(得分:1)

看一下错误,我看到了2个问题

val WHEREfl0="val val"
  • 首先,WHEREfl0应该是WHERE fl0

  • 其次是问题val WHERE[..]我认为您遗失了"

val" WHERE fl0="val val"

我猜你在添加虚拟文本时修复了查询,因为这个查询是正确的:

UPDATE tbl SET fl1="val",fl2="val", fl3="val" WHERE fl0="val val"

答案 1 :(得分:1)

尝试使用单引号,而不是双引号。 ( '')

UPDATE tbl SET fl1='val',fl2=val', fl3='val' WHERE fl0='val val'

您还应该在语法中使用“`”:

UPDATE `tbl` SET `fl1`='val',`fl2`=val', `fl3`='val' WHERE `fl0`='val val'

答案 2 :(得分:1)

发现它:D ...我有多个查询要执行,这是使用PHP完成的...问题是在中间的查询中是这样的:

UPDATE tbl SET fl1='val',fl2='val', fl3=''val WHERE fl0='val val'

感谢您的支持。

答案 3 :(得分:0)

怎么样?

UPDATE `tbl` 
   SET `fl1` = 'val',
       `fl2` = 'val', 
       `fl3` = 'val' 
 WHERE `fl0` = 'val val'

1。)我已将Double Quote改为Apostrophe。

2。)我添加了backtick,以防您的某列包含reserved word