Laravel | Conceptos básicos de migración

En Laravel, la migración proporciona una forma de compartir fácilmente el esquema de la base de datos. También facilita mucho la modificación del esquema. Es como crear un esquema una vez y luego compartirlo muchas veces. Se vuelve muy útil cuando tiene varias tablas y columnas, ya que reduciría el trabajo de crear las tablas manualmente.

Para crear una migración: se puede crear usando el comando artesanal como se muestra a continuación:

php artisan make:migration create_articles_table

Aquí, los artículos serán la tabla y, en su lugar, puede escribir cualquier otro nombre de tabla que desee crear y que sea apropiado para la aplicación, pero el nombre de la tabla, como vio, debe estar en forma plural. Entonces, está escrito como artículos y no como artículo . Este es el esquema de nomenclatura que utiliza Laravel y es importante especificar create al principio y table al final de acuerdo con el esquema de nomenclatura de un archivo de migración en Laravel.

Todos los archivos de migración que creamos usando el comando artesanal están ubicados en el directorio de base de datos/migraciones . Entonces, después de ejecutar el comando anterior, generará un archivo PHP con el nombre que especificamos con la fecha y hora actuales.

Y el archivo se creará con algunas clases y funciones predefinidas, como se muestra en el siguiente código:

<?php
  
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
  
class CreateArticlesTable extends Migration
{
    public function up()
    {
        Schema::create('articles', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->timestamps();
        });
    }
  
    public function down()
    {
        Schema::dropIfExists('articles');
    }
}

Si desea especificar el nombre de la tabla diferente al nombre que especificó como el nombre del archivo, puede usar una opción como –crear con el comando de la siguiente manera:

php artisan make:migration create_articles_table --create=gfg

Con este comando, el nombre de la tabla contenida en el método create() será gfg y no artículos , que se especifica en el nombre del archivo.

<?php
  
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
  
class CreateArticlesTable extends Migration
{
    public function up()
    {
        Schema::create('gfg', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->timestamps();
        });
    }
    public function down()
    {
        Schema::dropIfExists('gfg');
    }
}

Estructura básica de una migración: un archivo de migración contiene una clase con el nombre del archivo especificado al crear la migración y amplía la migración . En eso tenemos dos funciones, la primera es la función up() y la segunda es la función down() . Se llama a up() cuando ejecutamos la migración para crear una tabla y columnas especificadas y se llama a la función ‘ down() ‘ cuando queremos deshacer la creación de la función ‘ up() ‘.

En la función up() tenemos el método create de la fachada Schema (constructor de esquemas) y como decimos antes, el primer argumento de esta función es el nombre de la tabla a crear. El segundo argumento es una función con un objeto Blueprint como parámetro y para definir la tabla.

En la función down(), tenemos un método dropIfExists del generador de esquemas que, cuando se llama, descartará la tabla.

Para ejecutar la migración: antes de ejecutar una migración, primero debemos crear una base de datos MySQL y conectarnos a ella. Una vez hecho esto, para ejecutar una migración , podemos usar un comando de Artisan de la siguiente manera:

php artisan migrate

Este comando ejecutará la función up() en el archivo de clase de migración y creará la tabla con todas las columnas especificadas.
Nota: Este comando ejecutará la función up() y creará todas las tablas en la base de datos para todo el archivo de migración en el directorio de base de datos/migraciones .

Para revertir cualquier última migración que se haya realizado, podemos usar el siguiente comando de Artisan:

php artisan migrate:rollback

Este comando ejecutará la función down() en el archivo de clase de migración.

Referencia: https://laravel.com/docs/6.x/migrations

Publicación traducida automáticamente

Artículo escrito por aakashpawar1999 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *