我有这个查询
$q1 = "UPDATE klanten SET (
kla_tel2,
kla_mobiel,
kla_fax,
kla_btw_nummer,
kla_bankrekening,
kla_ww,
kla_bez_straat,
kla_bez_nummer,
kla_bez_toev,
kla_bez_pc,
kla_bez_plaats,
kla_bez_land_id,
kla_post_straat,
kla_post_nummer,
kla_post_toev,
kla_post_postbus,
kla_post_pc,
kla_post_plaats,
kla_post_land_id,
kla_fac_straat,
kla_fac_nummer,
kla_fac_toev,
kla_fac_postbus
kla_fac_pc,
kla_fac_plaats,
kla_fac_land_id,
kla_sidn_owner,
kla_reg_status,
kla_rechtspersoon
)
VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
WHERE kla_id=" . $kla_id;
但是在执行时它会给我一个语法错误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 '( kla_tel2, kla_mobiel, kla_fax, kla_btw_num' at line 1: SQL: UPDATE klanten SET ...
我所知道的是,所有值都已填充且$kla_id
也被填充,但因为这是一个不应该成为问题的SQL语法错误。
修改
MySql客户端版本是5.0.51a 服务器版本是5.0.51a-24 + lenny4 协议版本为10
答案 0 :(得分:3)
您使用了错误的UPDATE
语法。有关详细信息,请参阅the docs。
正确的语法如下:
UPDATE klanten SET kla_tel2 = <some_value>, kla_mobiel = <some_other_value> WHERE kla_id = <some_third_value>
您也可以使用上面示例中的准备好的SQL语句,使用问号。