[英]PHP & MYSQL, update record that is an exact match
我有一個主鍵值為的數據庫
John
John Clark
John Hall
我不僅更新約翰克拉克而不更新其他兩個..
我試過一個選擇
$sql3 = "SELECT DISTINCT username FROM mydbase.mytable WHERE `username` LIKE '%".$usertable."%'";
$ usertable包含我想在dbase中找到的名稱,即“John Clark”
一旦找到我想更新,我的SQL就是這樣
$sql4 ="UPDATE mydbase.mytable SET `picturecount` = ". $pictnumber ." WHERE `username` LIKE '%".$usertable."%'";
所有3個名字都在更新中發生了什么,有人可以建議我如何更新我所追求的名稱,在這種情況下“John Clark”
你的where
條件得到3行並更新它們,這是更好的方法,不要像你的where
子句一樣使用,更好的方法你必須把一些穩定的東西,如id
或其他東西,如%john%
得到3行,並更新它們。
$sql3 = "SELECT DISTINCT username,id FROM mydbase.mytable WHERE username LIKE '%".$usertable."%'";
和第二個查詢像:
$sql4 ="UPDATE mydbase.mytable SET picturecount = ". $pictnumber ." WHERE username id=$sql3["id"]";
希望這個幫助。
您只需使用以下代碼:
$sql4 ="UPDATE mydbase.mytable SET picturecount = '". $pictnumber .'" WHERE username =".$usertable;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.