这个SQL语法有什么问题?

时间:2010-06-01 22:48:21

标签: sql mysql

UPDATE files 
SET filepath = REPLACE(filepath, `sites/somedomain.com/files/`, `sites/someotherdomain.com/files/`);

我有一个名为files的表,其中包含一个名为filepath的字段。 MySQL返回此错误:Unknown column 'sites/somedomain.com/files/' in 'field list'

3 个答案:

答案 0 :(得分:12)

使用普通引号而不是反引号:普通引号标识字符串,反引号标识列名。

答案 1 :(得分:2)

扩展kemp的答案:

在MySQL中使用

反引号或反引号来包含模式对象(数据库,表,列,索引,过程......)的名称。它们不能用于包含字符串。您必须使用常规的单引号或双引号:'或'。

答案 2 :(得分:2)

+1 @kemp和@Hammerite给出的答案。

另请参阅我对此问题的回答:Do different databases use different name quote?