更改mysql表中的字段?

时间:2010-02-17 22:14:46

标签: mysql

我希望将具有特定值的所有字段更改为其他值。

但是我的代码给了我一个错误

     UPDATE maps
     SET city_id = $new_id
     WHERE city_id = $old_id
你不能这样写吗?

我收到此错误代码:

    Couldn't execute query: 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 '' at line 3

2 个答案:

答案 0 :(得分:1)

$query = "UPDATE maps
 SET city_id = '$new_id'
 WHERE city_id = '$old_id'";

其他示例here

答案 1 :(得分:1)

如果您的ID是整数,请确保没有null,因为命令

UPDATE maps SET city_id=4 WHERE city_id=

会失败,而

UPDATE maps SET city_id='4' WHERE city_id=''

不会失败,虽然可能不会更新任何内容,假设city_id是表的主键,并且所有行都应该有一个,所以没有city_id等于空字符串。

如果您仍然收到错误,请让您的脚本回显完整的SQL字符串(在用值替换变量之后),以查看变量中是否有异常输入导致它。