Drupal 6 db_query文件表

时间:2011-03-17 14:00:18

标签: drupal-6

作为从Windows服务器迁移到Linux服务器的一部分,我必须清理大量的文件名。

我的问题是当我执行时:

db_query("UPDATE {files} SET filename = '%s' AND filepath = '%s' WHERE fid = %d", $file->filename, $file->filepath, $file->fid);

然后选择$ file->的内容; fid文件名字段的值为“0”

如果我在执行它之前和之后将查询转储为文本,则filename字段包含我指定的文件名,其中正确存储了文件路径。

2 个答案:

答案 0 :(得分:1)

该死!将AND放入更新查询将不会产生预期的结果...... MySQL允许这样做,但它不是要走的路:)

答案 1 :(得分:1)

使用逗号代替AND。

可能还想研究使用drupal_write_record()而不是db_query。如果为要检查的键添加第3个参数,drupal_write_record将自动更新预先存在的行。在您的情况下,您可以使用文件ID。