From 06a3d712222fb0e67d25d003309ea2b73a66f884 Mon Sep 17 00:00:00 2001 From: cp6 Date: Mon, 9 May 2022 14:42:09 +1000 Subject: [PATCH] Added foreign keys Added foreign keys to some tables --- ...2021_02_10_122904_create_servers_table.php | 6 +- ...2022_02_01_233932_create_domains_table.php | 2 +- ...2022_02_03_040140_create_shareds_table.php | 4 +- ...22_02_03_040152_create_resellers_table.php | 4 +- .../2022_05_09_114227_add_foreign_keys.php | 55 +++++++++++++++++++ 5 files changed, 63 insertions(+), 8 deletions(-) create mode 100644 database/migrations/2022_05_09_114227_add_foreign_keys.php diff --git a/database/migrations/2021_02_10_122904_create_servers_table.php b/database/migrations/2021_02_10_122904_create_servers_table.php index 85f7617..e3fb170 100644 --- a/database/migrations/2021_02_10_122904_create_servers_table.php +++ b/database/migrations/2021_02_10_122904_create_servers_table.php @@ -21,9 +21,9 @@ class CreateServersTable extends Migration $table->string('ns1')->nullable()->default(null); $table->string('ns2')->nullable()->default(null); $table->tinyInteger('server_type')->default(1); - $table->integer('os_id')->default(0); - $table->integer('provider_id')->default(9999); - $table->integer('location_id')->default(9999); + $table->unsignedBigInteger('os_id')->default(0); + $table->unsignedBigInteger('provider_id')->default(9999); + $table->unsignedBigInteger('location_id')->default(9999); $table->integer('ssh')->nullable()->default(22); $table->integer('bandwidth')->nullable(); $table->integer('ram')->default(1024); diff --git a/database/migrations/2022_02_01_233932_create_domains_table.php b/database/migrations/2022_02_01_233932_create_domains_table.php index a0841fe..2d437ce 100644 --- a/database/migrations/2022_02_01_233932_create_domains_table.php +++ b/database/migrations/2022_02_01_233932_create_domains_table.php @@ -21,7 +21,7 @@ class CreateDomainsTable extends Migration $table->string('ns1')->nullable(); $table->string('ns2')->nullable(); $table->string('ns3')->nullable(); - $table->integer('provider_id')->default(9999); + $table->unsignedBigInteger('provider_id')->default(9999); $table->date('owned_since')->nullable(); $table->timestamps(); }); diff --git a/database/migrations/2022_02_03_040140_create_shareds_table.php b/database/migrations/2022_02_03_040140_create_shareds_table.php index 30dd172..5a06026 100644 --- a/database/migrations/2022_02_03_040140_create_shareds_table.php +++ b/database/migrations/2022_02_03_040140_create_shareds_table.php @@ -18,8 +18,8 @@ class CreateSharedsTable extends Migration $table->tinyInteger('active')->default(1); $table->string('main_domain'); $table->string('shared_type')->nullable(); - $table->integer('provider_id')->default(9999); - $table->integer('location_id')->default(9999); + $table->unsignedBigInteger('provider_id')->default(9999); + $table->unsignedBigInteger('location_id')->default(9999); $table->integer('bandwidth')->nullable(); $table->integer('disk')->default(10); $table->char('disk_type', 2)->default('GB'); diff --git a/database/migrations/2022_02_03_040152_create_resellers_table.php b/database/migrations/2022_02_03_040152_create_resellers_table.php index e802712..43f9e12 100644 --- a/database/migrations/2022_02_03_040152_create_resellers_table.php +++ b/database/migrations/2022_02_03_040152_create_resellers_table.php @@ -19,8 +19,8 @@ class CreateResellersTable extends Migration $table->string('main_domain'); $table->integer('accounts')->default(1); $table->string('reseller_type')->nullable(); - $table->integer('provider_id')->default(9999); - $table->integer('location_id')->default(9999); + $table->unsignedBigInteger('provider_id')->default(9999); + $table->unsignedBigInteger('location_id')->default(9999); $table->integer('bandwidth')->nullable(); $table->integer('disk')->default(10); $table->char('disk_type', 2)->default('GB'); diff --git a/database/migrations/2022_05_09_114227_add_foreign_keys.php b/database/migrations/2022_05_09_114227_add_foreign_keys.php new file mode 100644 index 0000000..4135b27 --- /dev/null +++ b/database/migrations/2022_05_09_114227_add_foreign_keys.php @@ -0,0 +1,55 @@ +foreign('location_id','servers_fk_location')->references('id')->on('locations'); + $table->foreign('provider_id','servers_fk_provider')->references('id')->on('providers'); + $table->foreign('os_id','servers_fk_os')->references('id')->on('os'); + $table->foreign('id', 'servers_fk_pricing')->references('service_id')->on('pricings')->onDelete('cascade'); + }); + + Schema::table('shared_hosting', function (Blueprint $table) { + $table->foreign('location_id','shared_fk_location')->references('id')->on('locations'); + $table->foreign('provider_id','shared_fk_provider')->references('id')->on('providers'); + $table->foreign('id', 'shared_fk_pricing')->references('service_id')->on('pricings')->onDelete('cascade'); + }); + + Schema::table('reseller_hosting', function (Blueprint $table) { + $table->foreign('location_id','reseller_fk_location')->references('id')->on('locations'); + $table->foreign('provider_id','reseller_fk_provider')->references('id')->on('providers'); + $table->foreign('id', 'reseller_fk_pricing')->references('service_id')->on('pricings')->onDelete('cascade'); + }); + + Schema::table('domains', function (Blueprint $table) { + $table->foreign('provider_id','domains_fk_provider')->references('id')->on('providers'); + $table->foreign('id', 'domains_fk_pricing')->references('service_id')->on('pricings')->onDelete('cascade'); + }); + + Schema::table('misc_services', function (Blueprint $table) { + $table->foreign('id', 'misc_fk_pricing')->references('service_id')->on('pricings')->onDelete('cascade'); + }); + + Schema::table('yabs', function (Blueprint $table) { + $table->foreign('server_id', 'yabs_fk_servers')->references('id')->on('servers'); + }); + + Schema::table('disk_speed', function (Blueprint $table) { + $table->foreign('id', 'ds_fk_yabs')->references('id')->on('yabs'); + }); + + Schema::table('network_speed', function (Blueprint $table) { + $table->foreign('id', 'ns_fk_yabs')->references('id')->on('yabs'); + }); + } + + public function down() + { + } +}