m:n
テーブルを別のシステムの別のmysqlデータベーステーブルと同期させたい。
従業員がnの部門で働くことができ、1つの部門にn人の従業員がいると仮定します。
Table Department(id(pk), name)
Table Employee(id(pk), name)
Table employee_department(employee_id(fk), department_id(fk))
私が使用した他のすべてのテーブル"insert into...on duplicate key"
では、Mysqlが見つかったアイテムを新しい値で更新しているため、うまく機能しています。このステートメントをemployee_departmentテーブルで使用すると、重複する値が挿入されます(これらはfksのみであるためです)。複合キーを使用できるように、fksをpksに変更することを考えました。しかし、mysqlは再度挿入しませんが、他のシステムから削除された参照を削除しません。
テーブル全体の同期を維持するために何を変更する必要がありますか?