Solucionado (ver solución)
Solucionado
(ver solución)
5
respuestas

Recopilación de soluciones al error de crear una tabla

Hola, me tomó casi una semana resolver esto, inicialmente mi tabla si logró ser creada pero mi campo era 'espcialidad' en lugar de 'especialidad' y se me hizo fácil modificar el campo desde MySQL, error fatal.

Dentro de las cientos de respuestas en el foro encontré:

  • Instalar la extensión de DB Navigator de Dan Cioca (Eventualmente en otro foro decía que el error se debía a este plugin y que era mejor desinstalarlo).
  • Revisar credenciales en el archivo application.properties.
  • Borrar toda la carpeta de db.migration
  • Cambiar los "-" por "_" en el archivo .sql*

Entre otros, pero lo que realmente me sirvió fue un video en YT y prestar atención a todo el mensaje:

Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Validate failed: Migrations have failed validation Migration checksum mismatch for migration version 1 -> Applied to database : -1067310877 -> Resolved locally : 2063168472

5 respuestas
solución!

Hice unas pruebas previas y me di cuenta que al borrar la carpeta de db con todo su contenido, la aplicación podría ser ejecutada sin inconvenientes. También noté al abrir MySQL, la tabla medicos que inicialmente había creado, posteriormente modificado y eventualmente eliminado con la intención de reiniciar el proceso, no estaba siendo creada nuevamente. Pero habia otra tabla llamada 'flyway_schema_history'. Curiosamente el registro creado tenia un campo checksum y este número coincidía con el que venía en el error: -1067310877.

Pude buscar la manera de cambiar el registro o crear una nueva tabla, multiples soluciones, pero elegí la "Siempre confiable": Eliminé esa tabla desde MySQL y funcionó.

Espero que si alguien mas se topa con la misma situación pueda leer esto y ahorrarle días de tiempo.

Vaya que ha sido de ayuda, muchas gracias por el aporte.

ALTER TABLE medicos RENAME COLUMN espcialidad TO especialidad;

Que raro, el comando para renombrar la columna debió ser suficiente.

Muchas gracias, has sido de gran ayuda para poder resolver los problemas que tenía con el nombre de la tabla, y sí, curiosamente el signo '-' debe ser remplazado por '_'

Muchas gracias por la solución