Estamos trabajando en algo propio llamado KODOTI. Click para unirte
Se viene KODOTI. Únete

Introducción a las migraciones con Laravel Framework

Veremos la utilidad de las migraciones en Laravel, así como un ejemplo de introducción a esta forma de gestionar tu base de datos desde el Framework.

Canales Zapata, Mauro
439 lecturas
Canales Zapata, Mauro

¿Qué son las migraciones en Laravel?

En Laravel, se dice que las migraciones son un control de versiones de nuestra base de datos, pero en realidad son más que eso. Este nos permite crear tablas, establecer relaciones, modificarlas y por supuesto eliminarlas, y todo esto mediante la consola de comandos.

Veamos un ejempo básico de introducción, para esto obviamente debemos tener descargado el framework previamente y corriendo en nuestro servidor local o de pruebas.

Creando una migración

Primero deberemos abrir la consola o línea de comandos y posicionarnos en la ruta de nuestro proyecto. Luego de esto, ejecutar el siguiente comando para crear nuestra primera migración.

php artisan make:migration create_empleados_table

Por convención, cada vez que creemos una migración para una determinada tabla de nuestra base de datos debemos nombrarla de la siguiente manera:

create_nombredelaTabla_table

En nuestro ejemplo, hemos creado una migración especificamente para la tabla “empleados” de nuestra base de datos, ahora nos dirigimos a la carpeta database/migrations y encontraremos la migración creada.

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateEmpleadosTable extends Migration
{
    /**
    * Run the migrations.
    *
    * @return void
    */
    public function up()
    {
        Schema::create('empleados', function (Blueprint $table) {
        $table->increments('id');
        $table->timestamps();
        });
    }

    /**
    * Reverse the migrations.
    *
    * @return void
    */
    public function down()
    {
        Schema::dropIfExists('empleados');
    }
}
  • Método Up: corre las migraciones/cambios pendientes.
  • Método Down: revierte la migración realizada por el método up.

Podemos observar que Laravel nos ha creado una clase, con dos métodos para gestionar muestra tabla fácilmente.

Asignando los nuevos campos, atributos, etc

Ahora vamos a gestionar las nuevas columnas para que se incluya en el proceso de migración. Y esto lo vamos hacer en el método Up.

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateEmpleadosTable extends Migration
{
    /**
    * Run the migrations.
    *
    * @return void
    */
    public function up()
    {
        Schema::create('empleados', function (Blueprint $table) {
        $table->increments('id');
        $table->string("nombres");
        $table->string("apellidos");
        $table->integer("edad")->nullable();
        $table->timestamps();
        });
    }

    /**
    * Reverse the migrations.
    *
    * @return void
    */
    public function down()
    {
        Schema::dropIfExists('empleados');
    }
}

En este ejemplo estamos creando 3 columnas para nuestra base de datos, cabe recalcar que la columna id ya viene declarada por defecto y es un AUTO_INCREMENT. A las columnas nombres y apellidos se le asigno un string, es decir un VARCHAR. También podemos establecer la longitud de la cadena de la siguiente manera:

public function up()
{
    Schema::create('empleados', function (Blueprint $table) {
        $table->increments('id');
        $table->string("nombres", 50);
        $table->string("apellidos", 50);
        $table->integer("edad")->nullable();
        $table->timestamps();
    });
}

Ejecuntado la migración

Finalmente, debemos ejecutar la migración y para esto vamos a ejecutar el siguiente comando.

php artisan migrate
¿Te gustó nuestra publicación?
Suscríbete a nuestro boletín