30 votos

¿Cómo puedo ejecutar una migración específica en Laravel?

Creé una migración de tabla de direcciones pero una migración ya está en la base de datos y da el siguiente error:

La tabla base o vista ya existe: 1050 La tabla 'notification' ya existe

Entonces, ¿Puedo ejecutar una migración específica? ¿Cómo puedo ejecutarla en Laravel?

64voto

abc rockes Puntos 826

TLDR;

"Según el libro":

Si ya hay tablas migradas y hay datos almacenados en esas tablas, ten cuidado con php artisan migrate:refresh. ¡Perderás todos tus datos!

Para esta pregunta específica, el OP ya ha ejecutado la migración y según el libro, si quiere ejecutar la misma migración nuevamente, entonces primero debería retroceder con php artisan migrate:rollback. Esto deshace la(s) última(s) migración(es).

Luego puedes ejecutar php artisan migrate y todas las migraciones NO migradas se migrarán.


Si has creado más migraciones y aún no se han migrado, para ejecutar solo una migración específica utiliza esto:

php artisan migrate --path=/database/migrations/full_migration_file_name_migration.php

Y a veces, si algo está mal y obtienes errores al migrar, diciendo que la tabla ya existe, puedes eliminar manualmente esa entrada específica de migrations Y la tabla que causa el problema en tu base de datos y ejecutar php artisan:migrate para recrear la tabla.

1voto

Sachin Aghera Puntos 386

Sí, puedes añadirlo siguiendo estos simples pasos.

Paso 1: Abre tu base de datos.

Paso 2: Encuentra la tabla de migración.

Paso 3: Encuentra el nombre del archivo de migración.

Paso 4: Borra ese archivo.

Paso 5: Ahora puedes ejecutar el comando php artisan migrate.

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X