2012-04-11 7 views
0

私は単一のテーブルデータを持つcustomerという名前のシンプルなデータベースを持っています。顧客名がデータベースに存在するかどうかを確認したいのですが、それを削除したいのですが、これはMYSQL Connectorを使用しています。テーブルに値が存在するかどうかを確認する方法、存在する場合は削除する方法

EDIT: 
I want to make sure the value is present before deleting to display 
a simple user message. 
+0

存在していない顧客を削除しようとしましたか? – npinti

+0

これはちょっと混乱します。それを行うMySQLクエリが欲しいですか?データをデータテーブルなどにプルして、そのアクションを実行したいのですか?展開してください。 – Dementic

+0

あなたは、削除したいデータのexistanceをチェックする必要がちょうどそれがnamehere''名= 'customertableから削除 'のような単純なものでした'あなたcondition'は= –

答えて

6

なぜ単に削除しないのですか?

DELETE FROM customers WHERE customer_name = 'John Smith'; 

存在する場合は削除されます。それ以外の行は影響を受けません。

EDIT:

あなたがより複雑なプロセスが必要な場合は、その後、私は(順番に)お勧めします:ON DELETE FOR EACH ROWトリガーを作成

  1. 、削除時にその意志の自動更新フラグ。
  2. この目的のための関数/手順を開発する。
  3. のように、トランザクションブロック内の一連のアクションを実行する:あなたは、あなたのデザインの詳細を提供することができれば
START TRANSACTION; 
    UPDATE flag_table SET is_deleted = 1 WHERE customer_name = 'John Smith'; 
    DELETE FROM customers WHERE customer_name = 'John Smith'; 
    COMMIT; 

答えるために容易になるだろう。あなたは、この目的のためにトリガーを使用することができます

+0

値が見つからない場合、これは例外をスローしません。 – techno

+0

いいえ何もしません。 – Iridio

+0

お客様の名前が存在するかどうかを確認したい場合もあります。 – techno

0

任意のrepetationが挿入時に発見された場合、MySQLは削除させていただきます。

関連する問題