Diferencia entre revisiones de «Migraciones»
(Página creada con «== Migraciones == php artisan make:migration nombre_de_la_migracion») |
|||
(No se muestran 5 ediciones intermedias del mismo usuario) | |||
Línea 1: | Línea 1: | ||
== Migraciones == | == Base de datos: Migraciones== | ||
=== Generando Migraciones === | |||
php artisan make:migration nombre_de_la_migracion | 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. | |||
<pre> | |||
<?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'); | |||
} | |||
}; | |||
</pre> | |||
==== Ejecutar Migración ==== | |||
Una vez que hayas definido tus migraciones, puedes ejecutarlas con el siguiente comando: | |||
<pre> | |||
php artisan migrate | |||
</pre> | |||
Esto aplicará todas las migraciones pendientes en tu base de datos. | |||
==== Revertir Migraciones ==== | |||
Si necesitas revertir una migración específica, puedes usar: | |||
<pre> | |||
php artisan migrate:rollback | |||
</pre> | |||
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. | |||
<pre> | |||
php artisan migrate:rollback --batch=3 | |||
</pre> | |||
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''' | |||
<pre> | |||
php artisan migrate:rollback --pretend | |||
</pre> | |||
El comando '''migrate:reset''' revertirá todas las migraciones de su aplicación: | |||
<pre> | |||
php artisan migrate:reset | |||
</pre> | |||
==== 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: | |||
<pre> | |||
php artisan migrate:refresh | |||
# Refresh the database and run all database seeds... | |||
php artisan migrate:refresh --seed | |||
</pre> | |||
Puede revertir y volver a migrar una cantidad limitada de migraciones si proporciona la stepopción al comando '''refresh''' . | |||
<pre> | |||
php artisan migrate:refresh --step=5 | |||
</pre> | |||
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.'' |
Revisión actual - 18:42 11 ago 2024
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.