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 Remove Package From Laravel
How To Remove Package From Lar...

In this article, we will see how to remove the package from laravel. there are different ways to remove packages fr...

Read More

Oct-31-2022

Access Denied for user 'root'@'localhost' phpMyAdmin
Access Denied for user 'root'@...

phpMyAdmin is a valuable web-based tool for managing MySQL databases, simplifying various database tasks. However, runni...

Read More

Jul-28-2023

Laravel 9 Resize Image Before Upload
Laravel 9 Resize Image Before...

In this article, we will see how to resize image before uploading in laravel 9. we will install the intervention/im...

Read More

Jun-15-2022

How to Upload Multiple Image in Laravel 8
How to Upload Multiple Image i...

In this example we will see how to upload multiple image in laravel 8. here, we wil see tutorial of multiple image uploa...

Read More

Sep-17-2021