Skip to main content

Laravel Migration (Update column, dropColumn) simplest and easiest way!

↬HOW TO UPDATE/DROP COLUMN WITHOUT LOOSING DATA? 



LARAVEL MIGRATION: UPDATING A COLUMN WITHOUT LOOSING DATA: 

Example:
Suppose i have a database table which has this fields:

id
slider_title
slider_description

and the migration of that table looks like this:


Schema::create('slide_cases', function (Blueprint $table) {
  $table->bigIncrements('id');
  $table->string('slider_title')->nullable();
  $table->string('slider_description')->nullable();
  $table->timestamps();
});

Now, if i want to change the slide_description field data type from string to longText using laravel migration, simply do the following steps: 

1) Open your command prompt and type:


     php artisan make:migration update_slider_description_in_slide_cases --table=slide_cases


➽PLEASE KEEP IN  MIND that slide_cases is my table name; so you have to give your table name in that place :)

2) Now, in your newly created migration file for updating slider_description do the followings:

Schema::table('slide_cases', function (Blueprint $table) {
  $table->longText('slider_description')->nullable()->change();
});

➽PLEASE KEEP IN  MIND that while updating in laravel migration you have to give change() at last :)

3) Finally you are ready to migrate now! ;)
    In your command prompt just type:
    
                php artisan migrate

I hope you have finally solved the problem :D Let me know your feedback.


LARAVEL MIGRATION: DROP/DELETE A COLUMN WITHOUT LOOSING DATA: 

Example:
Suppose i have a database table which has this fields:

id
member_name
member_address



and the migration of that table looks like this:


Schema::create('team_members', function (Blueprint $table) {
  $table->bigIncrements('id');
  $table->string('member_name');
  $table->string('member_address');
  $table->timestamps();
});

Now, if i want to drop the member_address field data using laravel migration, simply do the following steps: 

1) Open your command prompt and type:


php artisan make:migration drop_member_address_in_team_members --table=team_members


➽PLEASE KEEP IN  MIND that team_members is my table name; so you have to give your table name in that place :)

2) Now, in your newly created migration file for dropping member_address do the followings:

Schema::table('team_members', function (Blueprint $table) {
             $table->dropColumn('designation');
        });

 ➽PLEASE KEEP IN  MIND that while dropping column in laravel migration you have to write dropColumn() :)

3) Finally you are ready to migrate now! ;)
    In your command prompt just type:
    
                php artisan migrate

I hope you have finally solved the problem :D Let me know your feedback.

Comments

Popular posts from this blog

SQL: sneak peek

show databases; use mysql; show tables; select * from component; describe component; create database sql_intro; show databases; use sql_intro; create table emp_details (Name varchar(25), Age int, gender char(1), doj date, city varchar(15), salary float); describe emp_details; insert into emp_details  values("Jimmy",35,"M","2005-05-30","Chicago",70000), ("Shane",30,"M","1999-06-25","Seattle",55000), ("Marry",28,"F","2009-03-10","Boston",62000), ("Dwayne",37,"M", "2011-07-12","Austin", 57000), ("Sara",32,"F","2017-10-27","New York",72000), ("Ammy",35,"F","2014-12-20","Seattle",80000); select * from emp_details; select distinct city from emp_details; select count(name) as count_name from emp_details; select avg(salary) from emp_details; select name, age...