プロジェクト所属者テーブル
Table Definition
CREATE TABLE `project_members` (
`project_id` char(36) NOT NULL,
`user_id` char(36) NOT NULL,
`since_year` smallint(4) NOT NULL,
`since_semester` tinyint(1) NOT NULL,
`until_year` smallint(4) NOT NULL,
`until_semester` tinyint(1) NOT NULL,
`created_at` datetime(6) DEFAULT NULL,
`updated_at` datetime(6) DEFAULT NULL,
PRIMARY KEY (`project_id`,`user_id`),
KEY `fk_project_members_user` (`user_id`),
CONSTRAINT `fk_project_members_project` FOREIGN KEY (`project_id`) REFERENCES `projects` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `fk_project_members_user` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3
Name | Type | Default | Nullable | Children | Parents | Comment |
---|---|---|---|---|---|---|
project_id | char(36) | false | projects | プロジェクトUUID | ||
user_id | char(36) | false | users | ユーザーUUID | ||
since_year | smallint(4) | false | プロジェクト所属開始年 | |||
since_semester | tinyint(1) | false | プロジェクト所属開始学期(0:前期 1:後期) | |||
until_year | smallint(4) | false | プロジェクト所属終了年 | |||
until_semester | tinyint(1) | false | プロジェクト所属終了学期(0:前期 1:後期) | |||
created_at | datetime(6) | NULL | true | |||
updated_at | datetime(6) | NULL | true |
Name | Type | Definition |
---|---|---|
fk_project_members_project | FOREIGN KEY | FOREIGN KEY (project_id) REFERENCES projects (id) |
fk_project_members_user | FOREIGN KEY | FOREIGN KEY (user_id) REFERENCES users (id) |
PRIMARY | PRIMARY KEY | PRIMARY KEY (project_id, user_id) |
Name | Definition |
---|---|
fk_project_members_user | KEY fk_project_members_user (user_id) USING BTREE |
PRIMARY | PRIMARY KEY (project_id, user_id) USING BTREE |
erDiagram
"project_members" }o--|| "projects" : "FOREIGN KEY (project_id) REFERENCES projects (id)"
"project_members" }o--|| "users" : "FOREIGN KEY (user_id) REFERENCES users (id)"
"project_members" {
char_36_ project_id PK
char_36_ user_id PK
smallint_4_ since_year
tinyint_1_ since_semester
smallint_4_ until_year
tinyint_1_ until_semester
datetime_6_ created_at
datetime_6_ updated_at
}
"projects" {
char_36_ id PK
varchar_128_ name
text description
text link
smallint_4_ since_year
tinyint_1_ since_semester
smallint_4_ until_year
tinyint_1_ until_semester
datetime_6_ created_at
datetime_6_ updated_at
}
"users" {
char_36_ id PK
text description
tinyint_1_ check
varchar_32_ name
tinyint_1_ state
datetime_6_ created_at
datetime_6_ updated_at
}
Generated by tbls