From 77ab69187d64079f10a5c71d4894610446f00a22 Mon Sep 17 00:00:00 2001 From: DariusIII Date: Mon, 29 Jan 2018 14:44:03 +0100 Subject: [PATCH] Update migration files to include foreign keys --- Changelog | 1 + .../migrations/2018_01_20_195636_create_audio_data_table.php | 1 + .../migrations/2018_01_20_195728_create_dnzb_failures_table.php | 1 + .../migrations/2018_01_20_195915_create_par_hashes_table.php | 1 + .../2018_01_20_200005_create_release_comments_table.php | 1 + .../2018_01_20_200018_create_releases_groups_table.php | 1 + .../migrations/2018_01_20_200038_create_release_unique_table.php | 1 + .../2018_01_20_200046_create_releaseextrafull_table.php | 1 + .../migrations/2018_01_20_200056_create_release_files_table.php | 1 + .../migrations/2018_01_20_200104_create_release_nfos_table.php | 1 + .../2018_01_20_200113_create_release_search_data_table.php | 1 + .../2018_01_20_200124_create_release_subtitles_table.php | 1 + .../migrations/2018_01_20_200237_create_users_releases_table.php | 1 + .../migrations/2018_01_20_200346_create_video_data_table.php | 1 + 14 files changed, 14 insertions(+) diff --git a/Changelog b/Changelog index cd1d5cddc..9a4d41bae 100755 --- a/Changelog +++ b/Changelog @@ -1,4 +1,5 @@ 2018-01-29 DariusIII + * Chg: Update migration files to include foreign keys * Chg: Remove partitions from releases table, add foreign keys, update usage * Chg: Check for null release date in games * Fix: Fix viewing of comments list in admin area diff --git a/database/migrations/2018_01_20_195636_create_audio_data_table.php b/database/migrations/2018_01_20_195636_create_audio_data_table.php index 18750aa25..c6d7b3b18 100644 --- a/database/migrations/2018_01_20_195636_create_audio_data_table.php +++ b/database/migrations/2018_01_20_195636_create_audio_data_table.php @@ -27,6 +27,7 @@ class CreateAudioDataTable extends Migration { $table->string('audiolanguage', 50)->nullable(); $table->string('audiotitle', 50)->nullable(); $table->unique(['releases_id','audioid'], 'ix_releaseaudio_releaseid_audioid'); + $table->foreign('releases_id', 'FK_ad_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_195728_create_dnzb_failures_table.php b/database/migrations/2018_01_20_195728_create_dnzb_failures_table.php index 043c4d4a4..3c632425f 100644 --- a/database/migrations/2018_01_20_195728_create_dnzb_failures_table.php +++ b/database/migrations/2018_01_20_195728_create_dnzb_failures_table.php @@ -19,6 +19,7 @@ class CreateDnzbFailuresTable extends Migration { $table->integer('failed')->unsigned()->default(0); $table->primary(['release_id','users_id']); $table->foreign('users_id', 'FK_users_df')->references('id')->on('users')->onUpdate('CASCADE')->onDelete('CASCADE'); + $table->foreign('releases_id', 'FK_df_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_195915_create_par_hashes_table.php b/database/migrations/2018_01_20_195915_create_par_hashes_table.php index ac8ba55c7..cf319531a 100644 --- a/database/migrations/2018_01_20_195915_create_par_hashes_table.php +++ b/database/migrations/2018_01_20_195915_create_par_hashes_table.php @@ -17,6 +17,7 @@ class CreateParHashesTable extends Migration { $table->integer('releases_id')->unsigned()->comment('FK to releases.id'); $table->string('hash', 32)->comment('hash_16k block of par2'); $table->primary(['releases_id','hash']); + $table->foreign('releases_id', 'FK_ph_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_200005_create_release_comments_table.php b/database/migrations/2018_01_20_200005_create_release_comments_table.php index 1a52b665c..090e736c5 100644 --- a/database/migrations/2018_01_20_200005_create_release_comments_table.php +++ b/database/migrations/2018_01_20_200005_create_release_comments_table.php @@ -32,6 +32,7 @@ class CreateReleaseCommentsTable extends Migration { $table->bigInteger('sourceid')->unsigned()->nullable(); $table->binary('nzb_guid')->default('0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0'); $table->unique(['text_hash','releases_id'], 'ix_release_comments_hash_releases_id'); + $table->foreign('releases_id', 'FK_rc_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_200018_create_releases_groups_table.php b/database/migrations/2018_01_20_200018_create_releases_groups_table.php index 5866fd805..b82b91749 100644 --- a/database/migrations/2018_01_20_200018_create_releases_groups_table.php +++ b/database/migrations/2018_01_20_200018_create_releases_groups_table.php @@ -17,6 +17,7 @@ class CreateReleasesGroupsTable extends Migration { $table->integer('releases_id')->unsigned()->default(0)->comment('FK to releases.id'); $table->integer('groups_id')->unsigned()->default(0)->comment('FK to groups.id'); $table->primary(['releases_id','groups_id']); + $table->foreign('releases_id', 'FK_rg_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_200038_create_release_unique_table.php b/database/migrations/2018_01_20_200038_create_release_unique_table.php index d80b03a1c..e3c9b1e99 100644 --- a/database/migrations/2018_01_20_200038_create_release_unique_table.php +++ b/database/migrations/2018_01_20_200038_create_release_unique_table.php @@ -15,6 +15,7 @@ class CreateReleaseUniqueTable extends Migration { Schema::create('release_unique', function(Blueprint $table) { $table->integer('releases_id')->unsigned()->comment('FK to releases.id.'); + $table->foreign('releases_id', 'FK_ru_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); DB::unprepared("ALTER TABLE release_unique ADD COLUMN uniqueid BINARY(16) NOT NULL DEFAULT '0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0' COMMENT 'Unique_ID from mediainfo.'"); diff --git a/database/migrations/2018_01_20_200046_create_releaseextrafull_table.php b/database/migrations/2018_01_20_200046_create_releaseextrafull_table.php index e0d08a795..40d35e8bd 100644 --- a/database/migrations/2018_01_20_200046_create_releaseextrafull_table.php +++ b/database/migrations/2018_01_20_200046_create_releaseextrafull_table.php @@ -16,6 +16,7 @@ class CreateReleaseextrafullTable extends Migration { { $table->integer('releases_id')->unsigned()->primary()->comment('FK to releases.id'); $table->text('mediainfo', 65535)->nullable(); + $table->foreign('releases_id', 'FK_ref_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_200056_create_release_files_table.php b/database/migrations/2018_01_20_200056_create_release_files_table.php index f9ba54955..7f8763be7 100644 --- a/database/migrations/2018_01_20_200056_create_release_files_table.php +++ b/database/migrations/2018_01_20_200056_create_release_files_table.php @@ -21,6 +21,7 @@ class CreateReleaseFilesTable extends Migration { $table->timestamps(); $table->boolean('passworded')->default(0); $table->primary(['releases_id','name']); + $table->foreign('releases_id', 'FK_rf_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_200104_create_release_nfos_table.php b/database/migrations/2018_01_20_200104_create_release_nfos_table.php index 0fdee4500..9e2ca8867 100644 --- a/database/migrations/2018_01_20_200104_create_release_nfos_table.php +++ b/database/migrations/2018_01_20_200104_create_release_nfos_table.php @@ -16,6 +16,7 @@ class CreateReleaseNfosTable extends Migration { { $table->integer('releases_id')->unsigned()->primary()->comment('FK to releases.id'); $table->binary('nfo', 65535)->nullable(); + $table->foreign('releases_id', 'FK_rn_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_200113_create_release_search_data_table.php b/database/migrations/2018_01_20_200113_create_release_search_data_table.php index 894fe7c9f..20760e1c1 100644 --- a/database/migrations/2018_01_20_200113_create_release_search_data_table.php +++ b/database/migrations/2018_01_20_200113_create_release_search_data_table.php @@ -20,6 +20,7 @@ class CreateReleaseSearchDataTable extends Migration { $table->string('name')->default('')->index('ix_releasesearch_name_ft'); $table->string('searchname')->default('')->index('ix_releasesearch_searchname_ft'); $table->string('fromname')->nullable()->index('ix_releasesearch_fromname_ft'); + $table->foreign('releases_id', 'FK_rsd_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_200124_create_release_subtitles_table.php b/database/migrations/2018_01_20_200124_create_release_subtitles_table.php index 7ba4503f3..2539695a4 100644 --- a/database/migrations/2018_01_20_200124_create_release_subtitles_table.php +++ b/database/migrations/2018_01_20_200124_create_release_subtitles_table.php @@ -19,6 +19,7 @@ class CreateReleaseSubtitlesTable extends Migration { $table->integer('subsid')->unsigned(); $table->string('subslanguage', 50); $table->unique(['releases_id','subsid'], 'ix_releasesubs_releases_id_subsid'); + $table->foreign('releases_id', 'FK_rs_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_200237_create_users_releases_table.php b/database/migrations/2018_01_20_200237_create_users_releases_table.php index c02fa2617..670e62c4e 100644 --- a/database/migrations/2018_01_20_200237_create_users_releases_table.php +++ b/database/migrations/2018_01_20_200237_create_users_releases_table.php @@ -20,6 +20,7 @@ class CreateUsersReleasesTable extends Migration { $table->timestamps(); $table->unique(['users_id','releases_id'], 'ix_usercart_userrelease'); $table->foreign('users_id', 'FK_users_ur')->references('id')->on('users')->onUpdate('CASCADE')->onDelete('CASCADE'); + $table->foreign('releases_id', 'FK_ur_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); } diff --git a/database/migrations/2018_01_20_200346_create_video_data_table.php b/database/migrations/2018_01_20_200346_create_video_data_table.php index f552c39a9..ab8a1da6d 100644 --- a/database/migrations/2018_01_20_200346_create_video_data_table.php +++ b/database/migrations/2018_01_20_200346_create_video_data_table.php @@ -25,6 +25,7 @@ class CreateVideoDataTable extends Migration { $table->string('videoaspect', 10)->nullable(); $table->float('videoframerate', 7, 4)->nullable(); $table->string('videolibrary', 50)->nullable(); + $table->foreign('releases_id', 'FK_vd_releases')->references('id')->on('releases')->onUpdate('CASCADE')->onDelete('CASCADE'); }); }