いくつかのテーブルを関連付ける方法については疑問があります。私は、これらのテーブルを持っている:mysqlの外部キー
Userテーブル:ユーザ名(主キー)
チーム表:TEAM_NAME(主キー)、ユーザ名(外部キー参照ユーザ(ユーザ名))
この関係で、ユーザーは複数のチームを持つことができます。
- グループテーブル:GROUP_NAME(主キー)
私はグループの多くのチームを持つことができますが、これらのチームは、異なるユーザである必要なので、ユーザーの2つのチームがでできないことをしたいです同じグループ。
- Group_teams表:(GROUP_NAME、ユーザ名、TEAM_NAME)
私はこの方法の3つのテーブルとの関係を行うことを考えました。このテーブルには複合主キー(group_nameとusername)があります。このようにして、同じグループ内に複数のチームを持つことはできません。
さらに、ユーザーのチームが存在することを制御できるように、複合外部キー参照User(username)とTeam(team_name)を作成する必要があると思います。最後に、別の外部キー参照グループ(group_name)を作成して、グループが存在することを制御する必要があります。
私はそれをしようとするとエラーがあるので、このようになるとは確信していません。よろしくお願いして、あなたの意見を教えてください。
余分なデータベースタグを削除しました。実際に使用しているデータベースにのみタグを付けてください。 –