How To Add Foreign Key In Laravel 10 Migration

Websolutionstuff | May-05-2023 | Categories : Laravel

In this article, we will see how to add a foreign key in laravel 10 migration. Here, we will learn about laravel 10, add foreign key using migration. Laravel also provides support for creating foreign key constraints, which are used to force referential integrity at the database level.

So, let's see how to add a foreign key in laravel 10 migration, laravel 10 foreign key migration, how to set a foreign key in laravel 10, laravel drop foreign key, and laravel migration add a foreign key to an existing table.

For example, let's define a user_id column on the posts a table that references the id column on a users table.

Example:

php artisan make:migration create_posts_table

Migration:

<?php
  
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
  
class CreatePostsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('posts', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->text('body');
            $table->timestamps();
        });
  
        Schema::create('comments', function (Blueprint $table) {
            $table->id();
            $table->unsignedBigInteger('user_id');
            $table->unsignedBigInteger('post_id');
            $table->text('comment');
            $table->timestamps();
   
            $table->foreign('user_id')->references('id')->on('users');
            $table->foreign('post_id')->references('id')->on('posts');
        });
    }
    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('comments');
        Schema::dropIfExists('posts');
    }
}

Example:

Schema::create('comments', function (Blueprint $table) {
    $table->id();
    $table->foreignId('user_id')->constrained();
    $table->foreignId('post_id')->constrained();
    $table->text('comment');
    $table->timestamps();
});

 


You might also like:

Recommended Post
Featured Post
How to Add Select Clear Select2 Dropdown
How to Add Select Clear Select...

Hey everyone! Have you ever wanted to make your website's dropdown menus more interactive and user-friendly? Well, I...

Read More

Feb-19-2024

Laravel Eloquent Relationships
Laravel Eloquent Relationships

In this example we will see Laravel Eloquent relationships, laravel provides many relationship like laravel ha...

Read More

Mar-23-2021

Carbon Add Hours To Date In Laravel 9
Carbon Add Hours To Date In La...

In this article, we will see carbon add hours to date in laravel 9. Carbon provides addHour and addHours() function...

Read More

Nov-22-2022

Laravel 10 Send Mail using Markdown Template
Laravel 10 Send Mail using Mar...

Hey everyone! Ever wondered how to make your Laravel emails look sleek and professional? In this guide, I'll walk yo...

Read More

Dec-04-2023