42P07: duplicate_table
PostgreSQL¿Qué significa?
La tabla (u objeto similar) que se intenta crear ya existe. CREATE falló porque existe un objeto con el mismo nombre.
¿Por qué ocurre?
Volver a crear una tabla existente con CREATE TABLE; ejecutar el script dos veces; volver a aplicar migraciones; un conflicto de nombre con una vista/secuencia/índice del mismo nombre.
Cómo solucionarlo
Use IF NOT EXISTS para omitir la creación cuando el objeto ya existe: CREATE TABLE IF NOT EXISTS my_table (...). Si realmente quiere volver a crearla, elimínela primero: DROP TABLE IF EXISTS my_table; Haga que las migraciones puedan volver a ejecutarse de forma segura (idempotentes). Compruebe el objeto existente con \dt.