たとえば、顧客が削除された場合、他のテーブル(S)のすべての関連行が削除されます。どのようにmysqlを行うには、私は多くの解決策を試みたが、誰も働いていない時間です。 enter image description hereMySQL - 多対多関係の関連行を削除する方法
答えて
最も簡単な方法はON DELETE CASCADE
オプションとデザイン関連テーブルです。あなたが外部キー(他のテーブルの主キー)を持つデータベースのテーブルをデザインとき
は基本的に、あなたはその外部キーためON DELETE CASCADE
を設定することができます。つまり、プライマリテーブル(この外部キーがプライマリキーであるテーブル)でレコードが削除された場合、他のテーブルの関連レコードもすべて削除されます。
したがって、複数のテーブルの関連するデータを削除するために「クレイジー」クエリを作成する必要はありません。
次のリンクをON DELETE CASCADE
について詳しく知ることができます。mysqltutorial.org/mysql-on-delete-cascade
よりも、動作します。 – stack
あなたがDELETE
に最初の住所、顧客を持っている、と関係 または後にあなたがcascateをDELETEを使用しようとすることができます...しかし、注意してくださいhttp://www.mysqltutorial.org/mysql-on-delete-cascade/ は、これも参照してください。MySQL on delete cascade. Test Example
DELETE FROM Addresses WHERE AddressID IN (SELECT AddressID FROM Custormers_Addresses WHERE CustormerID = ID)
はTHEN ... RELACIONを削除... THEN顧客 DELETE FROM Customers WHERE CustomerID = ID
を削除 それを達成するために210
[ここで](http: /stackoverflow.com/questions/17225080/mysql-delete-from-with-union-subquery-by-in-condition)を参照してください。また、大量のデータがない限り、InnoDBなどのトランザクションデータベースを使用することを検討してください。 – glennstar
- 1. mysql多対多の関係
- 2. 多対多関係mysql select
- 3. MySQLのクエリ多対多の関係
- 4. NHibernate - 多対多の関係から項目を削除する方法は?
- 5. 多対多関係のMySqlクエリ
- 6. FOREIGN KEYSとのMySQL多対多関係
- 7. 子の行を1対多の関係で削除する
- 8. EF 4.2最初に、多対多関連を削除する方法は?
- 9. ダッパーマルチマッピングの多対多関係
- 10. laravel多対多の関係は、非関連データを返す
- 11. 多対多でのオブジェクトの削除HibernateとJavaとの関連
- 12. 多対多関係の中間テーブルでソフト削除
- 13. Djangoの多対多関係を多対多関係に変更しますか?
- 14. 多対多の関連での関係のタイプ
- 15. 同じエンティティ間で多対多の関係を行う方法
- 16. CoreData:多対多の関係
- 17. 多対多関係のデザインテーブル
- 18. RDBMSの多対多関係
- 19. 多対多関係のフィルタリング
- 20. Rails:多対多の関係
- 21. 多対多関係のCount()
- 22. は、多対多の関係
- 23. は、多対多の関係
- 24. 多対多の関係
- 25. Cakephpの多対多関係
- 26. 多対多関係のコアデータ/
- 27. SQLの多対多関係
- 28. クエリ(多対多の関係)
- 29. 多対多関係のモデリング
- 30. Django多対多の関係
これは、あなたが使用しているデータベースを知らずに外部キー制約が見えるものを理解せずに答えることはほとんど不可能です好き。つまり、 'Customer_Addresses'はカスケード削除を伴う外部キーを持っていて、そのテーブルからエントリを削除すると' Customer'と 'Addresses'からデータが削除されます – glennstar