2016-06-07 143 views
0

我有一個包含用戶權限的表。我想刪除所有記錄user_id = $user_id 我試過下面的代碼,但它似乎只刪除了每條查詢1條記錄。 我有這樣的桌子:如何刪除包含特定值的所有行

`user_id` `cat1` `cat2` `cat3` 
100  1000 2000 3000 
100  1000 2000 3001 
200  2500 2501 3000 
100  3000 3500 3333 

等等。 我的查詢似乎沒有正常工作和刪除哪些等於$user_id所有記錄.suppose $user_id=100;

<?php 
    $query="DELETE FROM tbl WHERE user_id=".$user_id; 
    mysql_query($query); 
?> 
+0

你確定'$ user_id'等於100? –

+0

如果$ user_id是100,將刪除user_id爲100的所有行,如果它不是,那麼任何一個都不是100 ... –

+0

您是否嘗試過從命令行運行命令來檢查?查詢似乎是正確的 – morcen

回答

-1

查詢"DELETE FROM tbl WHERE user_id='".$user_id."'"將刪除其中USER_ID與您作爲參數傳遞的值相匹配的所有行。

如果沒有任何匹配,查詢將無能爲力,就是這樣。

問候, 博揚

+0

爲什麼downvote? :( – zauzaj

+0

'user_id'幾乎可以肯定是一個整數類型的列,所以引用它作爲一個字符串是不必要的.OP指出原來的查詢有效,它只是刪除了太少的行,這個回答沒有解決這個問題 –

+2

是的,但他沒有指定它是一個整數 那麼,如果user_id實際上是字符串? – zauzaj

相關問題