2017-09-11 3 views

答えて

1

コンマの代わりにANDを使用し、*を削除します。

delete from relay where username='xyz' AND uname='admin' AND password='123' AND ip='10.1.1.80' AND port = '80'; 
+0

しかし、私は私の記録でその行を持っていると私はそれを削除したいya..but –

+0

... –

+0

を削除0行を返し、あなたが渡している値クエリにはテーブルに存在しますか? ipの –

0
DELETE FROM relay WHERE username='xyz' , uname='admin' , password='123' , ip='10.1.1.80' and port = '80' 
+0

しかし、私は0行の削除を返す –

+0

あなたは 'SELECT'クエリが削除したい行を選択しているかどうかを見ることができます。 'SELECT * FROM relay WHERE username = 'xyz' AND uname = 'admin' ANDパスワード= '123' AND ip = '10 .1.1.80 'AND port =' 80'' –

0

あなたの構文は少しオフになっています。 1つのテーブルから削除する場合、DELETEの後に*を指定する必要はありません。あなたは、削除が参加していた場合、あなたはDELETEキーワードの後に​​、テーブルやエイリアスを言及するだろうと

delete 
from relay 
where 
    username = 'xyz' AND 
    uname = 'admin' AND 
    password = '123' AND 
    ip = '10.1.1.80' AND 
    port = '80' 

注:また、あなたのWHERE条件はAND、いないカンマで区切る必要があります。

+0

残念ながら、 –

+0

'delete'を' select * 'に置き換えて実行します。結果はありますか?私の推測は、あなたの 'WHERE'ロジックが間違っているか、まったく一致するデータがないということです。 ipの –

+0

はipの点を比較しないため、0行で返されます。 –

0

ご使用の場合は*を削除してください。 *削除クエリで使用していません。 また、,も使用しています。 ,の代わりに、演算子を使用してください。

このクエリはうまくいく場合があります。

Delete from relay where username='xyz' and uname='admin' and password='123' and ip='10.1.1.80' and port = '80'; 
関連する問題