我有一个产品mysql表。 products_image列中存在一些错误数据。继续前进,我可以使用php并执行str_replace,但我的问题是,当前的数据。
我想更新products_image,它是产品图片的网址或路径。在它应该是/的路径中有./。
有没有办法在mysql(没有php)中使用存储过程运行更新语句或者,使用php,如下所示,但效果不佳。 当我在php中尝试它时(见下文)它大部分工作但它超时了。 (12779行)希望你能帮忙。谢谢。 KP
<pre> $sql ="Select products_image from products";
$result = mysql_query( $sql,$link );
while ($row = mysql_fetch_assoc($result)) {
$products_image = $row['products_image'];
$image = str_replace("./","/", $products_image);
$sql1="UPDATE products set products_image='$image'";
$result1 = mysql_query($sql1,$link);
}
</pre>
答案 0 :(得分:2)
使用REPLACE功能。
UPDATE products SET products_image = REPLACE(products_image, "./", "/")
答案 1 :(得分:0)
对代码的最小更改是:
更改
$sql1="UPDATE products set products_image='$image'";
到
$sql1="UPDATE products set products_image='$image' WHERE products_image = $row['products_image']";