diff --git a/mysql/migrations/000003_create_sponsorship_activities.up.sql b/mysql/migrations/000003_create_sponsorship_activities.up.sql index aa11708f..09fb1c80 100644 --- a/mysql/migrations/000003_create_sponsorship_activities.up.sql +++ b/mysql/migrations/000003_create_sponsorship_activities.up.sql @@ -1,9 +1,9 @@ -- テーブル作成: sponsorship_activities CREATE TABLE IF NOT EXISTS sponsorship_activities ( - id INT AUTO_INCREMENT PRIMARY KEY, - year_periods_id INT NOT NULL COMMENT '年度期間ID', - sponsor_id INT NOT NULL COMMENT '企業ID', - user_id INT NOT NULL COMMENT '担当者ID', + id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, + year_periods_id INT UNSIGNED NOT NULL COMMENT '年度期間ID', + sponsor_id INT UNSIGNED NOT NULL COMMENT '企業ID', + user_id INT UNSIGNED NOT NULL COMMENT '担当者ID', activity_status ENUM( 'unstarted', 'material_sent', @@ -28,20 +28,19 @@ CREATE TABLE IF NOT EXISTS sponsorship_activities ( remarks TEXT COMMENT '備考', created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - FOREIGN KEY (sponsor_id) REFERENCES sponsors(id), - FOREIGN KEY (user_id) REFERENCES users(id) - -- year_periodsテーブルがあるなら外部キー推奨 - -- FOREIGN KEY (year_periods_id) REFERENCES year_periods(id) + FOREIGN KEY (year_periods_id) REFERENCES year_periods(id) ON DELETE CASCADE, + FOREIGN KEY (sponsor_id) REFERENCES sponsors(id) ON DELETE CASCADE, + FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE ); -- テーブル作成: activity_sponsor_style_links (中間テーブル) CREATE TABLE IF NOT EXISTS activity_sponsor_style_links ( - id INT AUTO_INCREMENT PRIMARY KEY, - sponsorship_activity_id INT NOT NULL, - sponsor_style_id INT NOT NULL, + id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, + sponsorship_activity_id INT UNSIGNED NOT NULL, + sponsor_style_id INT UNSIGNED NOT NULL, category ENUM('money', 'goods') NOT NULL DEFAULT 'money' COMMENT '金銭/物品', created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, FOREIGN KEY (sponsorship_activity_id) REFERENCES sponsorship_activities(id) ON DELETE CASCADE, - FOREIGN KEY (sponsor_style_id) REFERENCES sponsor_styles(id) + FOREIGN KEY (sponsor_style_id) REFERENCES sponsor_styles(id) ON DELETE CASCADE ); \ No newline at end of file