-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
データベースの設計 #8
Comments
2点気になったことがあります。
|
1に関してはそちらの方が良いように感じるため、そのようにします。 |
また、nameがnicknameなのかreal_nameなのかわからないため、nicknameにフィールド名を変更して、管理用にContactにfamily_name, last_name, middle_nameの属性を追加します。 |
Roleおよび学部学科情報をマスタテーブルに切り離し、また名前についてnicknameと本名の区別を明確化します。 データベース設計1. Users テーブル
2. Auth テーブル(認証情報)
3. Roles テーブル(役職情報)
4. Affiliation テーブル(所属情報)
5. Faculty テーブル(学部情報)
6. Contact テーブル(連絡情報)
7. Name テーブル(名前情報)
8. Profiles テーブル(プロフィール情報)
9. Activity_Log テーブル(活動履歴)
erDiagram
USERS {
VARCHAR user_id PK
VARCHAR nickname
}
AUTH {
VARCHAR user_id PK, FK
VARCHAR hashed_password
INT role_id FK
}
ROLES {
INT role_id PK
VARCHAR role_name
}
AFFILIATION {
VARCHAR user_id PK, FK
INT faculty_id FK
INT grade
}
FACULTY {
INT faculty_id PK
VARCHAR faculty_name
VARCHAR department_name
}
CONTACT {
VARCHAR user_id PK, FK
VARCHAR school_email
VARCHAR sub_email
VARCHAR discord_id
VARCHAR github_id
VARCHAR phone_number
}
NAME {
VARCHAR user_id PK, FK
VARCHAR first_name
VARCHAR last_name
VARCHAR middle_name
}
PROFILES {
VARCHAR user_id PK, FK
VARCHAR profile_image
TEXT bio
}
ACTIVITY_LOG {
INT activity_id PK
VARCHAR user_id FK
DATE activity_date
TEXT activity_description
}
USERS ||--o{ AUTH : has
USERS ||--o{ AFFILIATION : has
USERS ||--o{ CONTACT : has
USERS ||--o{ NAME : has
USERS ||--o{ PROFILES : has
USERS ||--o{ ACTIVITY_LOG : logs
AUTH }o--|| ROLES : has
AFFILIATION }o--|| FACULTY : belongs_to
|
member-portalに必要で、データベースに保管する必要のある情報をとりあえず挙げます。ほかに何かあったら、挙げてもらえると嬉しいです。
データベース設計
1. Users テーブル
2. Affiliation テーブル(所属情報)
3. Contact テーブル(連絡情報)
4. Profiles テーブル(プロフィール情報)
5. Activity_Log テーブル(活動履歴)
The text was updated successfully, but these errors were encountered: