如何使用php通过csv更新表的一列

时间:2014-02-17 07:54:18

标签: php mysql sql csv

我使用以下代码更新表的一列,但它也删除了值 其他专栏,我找不到原因。请帮忙。

  

$ handle = fopen($ _ FILES ['filename'] ['tmp_name'],“r”);

while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {

        if($data[0]=='NULL'){
            $import="UPDATE tst_stores SET store_image_url = 'http://admin.showcasejewellers.com.au/uploads/default_store.jpg' ";
        } 
        else{
            $import="UPDATE tst_stores SET store_image_url = 'http://admin.showcasejewellers.com.au/uploads/" . mysql_real_escape_string($data[0]) . ".jpg'";
        }


    mysql_query($import) or die(mysql_error());


}

fclose($handle);

1 个答案:

答案 0 :(得分:1)

您的SQL查询错误。您必须使用WHERE子句指定要更新的行。例如

 UPDATE tst_stores SET store_image_url = 'http://admin.showcasejewellers.com.au/uploads/default_store.jpg' WHERE tst_stores.id = 10;

这将仅更新列id等于10的行。

注意:我只是假设表tst_stores已存在id列和主键。你必须相应地改变

只需查看此link即可进一步阅读。