Migraciones
Base de datos: Migraciones
Generando Migraciones
php artisan make:migration nombre_de_la_migracion
Estructura de la migración
Definir la Migración
Abre el archivo de migración recién creado en database/migrations Verás dos métodos: up() y down().
- Método up(): Define los cambios que deseas realizar en la base de datos (e.g., crear una tabla, agregar una columna).
- Método down(): Define cómo revertir esos cambios.
<?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; return new class extends Migration { /** * Run the migrations. */ public function up(): void { Schema::create('paises', function (Blueprint $table) { $table->id(); $table->string('nombre')->unique(); $table->string('gentilicio'); $table->string('codigo'); $table->timestamps(); }); } /** * Reverse the migrations. */ public function down(): void { Schema::drop('paises'); } };
Ejecutar Migración
Una vez que hayas definido tus migraciones, puedes ejecutarlas con el siguiente comando:
php artisan migrate
Esto aplicará todas las migraciones pendientes en tu base de datos.
Revertir Migraciones
Si necesitas revertir una migración específica, puedes usar:
php artisan migrate:rollback
Puede revertir un "lote" específico de migraciones proporcionando la opción batch al comando rollback , donde la opción batch corresponde a un valor de lote dentro de la migrations tabla de base de datos de su aplicación.
php artisan migrate:rollback --batch=3
Si requieres ver las declaraciones SQL que se ejecutarán mediante las migraciones sin ejecutarlas realmente, puede proporcionar la bandera --pretend al comando migrate:rollback
php artisan migrate:rollback --pretend
El comando migrate:reset revertirá todas las migraciones de su aplicación:
php artisan migrate:reset
Revertir y migrar usando un solo comando
El comando migrate:refresh revertirá todas las migraciones y luego ejecutará el comando migrate . Este comando recrea efectivamente toda la base de datos:
php artisan migrate:refresh # Refresh the database and run all database seeds... php artisan migrate:refresh --seed
Puede revertir y volver a migrar una cantidad limitada de migraciones si proporciona la stepopción al comando refresh .
php artisan migrate:refresh --step=5
Para obtener más información sobre los comandos y sus opciones, consulta la [documentación oficial de Laravel](https://laravel.com/docs/11.x/migrations).
Nota: Asegúrate de tener tu entorno de Laravel configurado correctamente antes de ejecutar las migraciones.