Saltar al contenido

Laravel no me deja migrar una tabla porque ya existe

Posteriormente a consultar especialistas en esta materia, programadores de diversas ramas y profesores hemos dado con la respuesta al problema y la dejamos plasmada en esta publicación.

Solución:

En laravel 5.5 y > puedes usar:

  $ php artisan migrate:fresh 
  // ( not migrate:refresh wich is a different command)

Este comando primero elimina todas las tablas y luego vuelve a ejecutar todas las migraciones

No eliminé la entrada de migración ni eliminé la tabla manualmente de la base de datos. En mi caso, la solución es abrir el tinker del compositor.

$ php artisan tinker
>>> Schema::drop('users')
>>> Schema::drop('password_resets')
>>> Schema::drop('orders')
>>> exit
php artisan migrate

Aquí está el resultado de los comandos anteriores ejecutados

[email protected]:~/Desktop/html/hutch$ php artisan migrate

En Connection.php línea 647: SQLSTATE[42S01]: La tabla o vista base ya existe: 1050 La tabla ‘usuarios’ ya existe (SQL: crear tabla users (id int sin firmar no
null auto_incr ement primario key, name varchar(255) no null,
email varchar(255) no nulo, password varchar(255) no null,
remember_token varchar(100) null, created_at marca de tiempo null,
updated_at marca de tiempo null) conjunto de caracteres predeterminado utf8mb4 cotejar utf8mb4_unicode_ci)

En Connection.php línea 449: SQLSTATE[42S01]: La tabla o vista base ya existe: 1050 La tabla ‘usuarios’ ya existe

[email protected]:~/Desktop/html/hutch$ php artisan migrate:rollback
Nothing to rollback.
[email protected]:~/Desktop/html/hutch$ php artisan tinker
Psy Shell v0.8.17 (PHP 7.1.20-1+ubuntu16.04.1+deb.sury.org+1 — cli) by Justin Hileman
>>> Schema::drop('users')
=> null
>>> Schema::drop('password_resets')
=> null
>>> Schema::drop('orders')
=> null
>>> exit
Exit:  Goodbye.
[email protected]:~/Desktop/html/hutch$ php artisan migrate
Migrating: 2014_10_12_000000_create_users_table
Migrated:  2014_10_12_000000_create_users_table
Migrating: 2014_10_12_100000_create_password_resets_table
Migrated:  2014_10_12_100000_create_password_resets_table
Migrating: 2018_08_18_071213_create_orders_table
Migrated:  2018_08_18_071213_create_orders_table
[email protected]:~/Desktop/html/hutch$ 

También define el método. down()si no existe.
De lo contrario, se mostrará

SQLSTATE[42S02]: Tabla base o vista no encontrada: 1051 Tabla desconocida ‘XYZ.ABC’ (SQL: soltar tabla ABC)

/**
  * Reverse the migrations.
  *
  * @return void
  */
public function down()

    Schema::dropIfExists('ABC');

Prueba esto,

Agregue la siguiente línea:
Schema::dropIfExists('mytable'); dentro de Arriba() función desde el principio exactamente antes de crear el esquema para el mi mesa.
es decir, antes de seguir el código.
Schema::create('mytable', function (Blueprint $table)

Al final de todo puedes encontrar las ilustraciones de otros usuarios, tú igualmente eres capaz insertar el tuyo si te gusta.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

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