
Alter table migration laravel. En el framework Laravel podemos trabajar sin complicaciones por su amplio soporte y manejar instrucciones como el «Alter table» sin complicaciones.
Alter table migration laravel
En que situaciones puede usar Alter Table?
- El ALTER TABLE. La declaración se utiliza para añadir, eliminar o modificar columnas en una tabla existente.
- El ALTER TABLE. La declaración también se utiliza para añadir y eliminar diversas limitaciones a una tabla existente.
Ademas, podemos usarlo para alterar la tabla como ser:
- Campo Unique
- Campo Indice
- Campo UNSIGNED ZEROFILL
- Agregar columnas
- Eliminar columnas
- Modificar columnas, etc.
Existen muchas mas opciones para usar esta declaración llamada alter table.
¿Como usar alter table en laravel?
Vamos a realizar un ejemplo de como agregar ceros a la izquierda a un campo de tipo numérico llamado invoice.
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('invoices', function (Blueprint $table) {
$table->id();
$table->integer('invoice');
$table->decimal('total', 13,2)->default(0)->nullable();
$table->timestamps();
});
}
En la migración superior hemos creado una tabla llamado INVOICES y posee 2 campos: invoice y total.
Ahora vamos a usar la sentencia ALTER TABLE
para que la columna INVOICE se altere de nueceros enteros a agregarle ceros a la izquierda. Por lo tanto, esta acción podemos lograrlo usando el atributo UNSIGNED ZEROFILL
.
DB::statement('ALTERTABLE invoices CHANGE invoice invoice INT(5) UNSIGNED ZEROFILL NOT NULL');
A continuación, veamos la integración completa de alter table
en la migración.
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('invoices', function (Blueprint $table) {
$table->id();
$table->integer('invoice');
$table->decimal('total', 13,2)->default(0)->nullable();
$table->timestamps();
});
DB::statement('ALTER TABLE invoices CHANGE invoice invoice INT(5) UNSIGNED ZEROFILL NOT NULL');
}
Luego ejecutar el comando para actualizar todas las tablas de nuestro proyecto
php artisan migrate:fresh --seed
Con estos pasos hemos logrado lo siguiente

Espero que esta breve explicación les ayude en sus proyectos de Laravel y no se olviden de compartir en sus redes sociales.