我有一種方案,我正在尋找基於現有列中的舊值使用新值更新類別列中的值。類別在單獨的表格中進行更改,並且需要在此表格中進行更新以反映更改。MYSQL REPLACE列值使用預準備語句,字符串版本
我使用預處理語句和兩個陣列的獸醫更換不同的價值取向:
$category = array($_POST['cat1'],$_POST['cat2'],$_POST['cat3'],$_POST['cat4']);
$oldCategory = array($_POST['catOld1'],$_POST['catOld2'],$_POST['catOld3'],$_POST['catOld4']);
for ($i=0;$i<4;$i++) {
$strg="UPDATE table_name SET CATEGORY = REPLACE (CATEGORY, ?, ?)";
$sql = $mysqli->prepare($strg) or die($db->error());
$sql->bind_param('ss', $oldCategory[$i], $category[$i]);
$sql->execute();
}
我覺得這是我的REPLACE語句的關於導致剛剛掛起準備好的語句的語法,但無法在任何地方在線找到正確的格式。任何援助讚賞。謝謝。
更新:好吧,那些奇怪的事情之一:它現在工作。爲什麼?我不確定。墨菲定律總是很難對我們命名。 Wrikken,你是對的:語法沒有錯。希望我能把你打扮起來。
但是,希望上面的內容對其他人有用。它花了我很多,沒有在線參考來解決這個問題。希望有用。
它應該工作('UPDATE ...字段名= REPLACE(字段名,oldstring,newstring)'),但根據在你的桌子上,它可能需要相當長一段時間.... – Wrikken
表是微小的:最多100條記錄。不擔心時間。但是,不,我只是得到一個掛起,甚至沒有任何錯誤消息返回,只有500錯誤。蕩。 –