PostgreSQL: “ERROR: la secuencia debe tener el mismo dueño que la tabla a la que está enlazada”

Trabajando en pgAdminIII, queriendo hacer una columna “autoincremental” en forma “automática” (o sea, a lo MySQL, en forma fácil), opté por usar el tipo de datos BigSerial (bueno… en realidad no es un tipo de dato. Ver: http://www.postgresql.org/docs/8.1/static/datatype.html#DATATYPE-SERIAL )

Al intentar crear la columna con este tipo de dato sale el siguiente error:

An error has occurred:

ERROR: la secuencia debe tener el mismo dueño que la tabla a la que está enlazada

Luego de varias pruebas, me di cuenta de la causa del error: Mi base de datos (y sus tablas) tienen como dueño un usuario diferente al que estoy logueado en pgAdminIII (es decir, la tabla tiene como dueño userDB, sin embargo me conecté al pgAdmin usando el “default” postgres).

Es decir, si se desea crear una tabla con algún campo autoincremental y la tabla tiene un dueño distinto al usuario con el que te logueaste al pgAdmin, el mismo intenta crear la secuencia con el usuario de login (no hay opciones para indicar quién será el owner o dueño).

Solución: ingresá al pgAdmin como el usuario al que pertenece la tabla. Punto.

Tal vez sea algo bastante ridículo, pero me llevó más de 1 hora de pelea con el pgAdmin 😛 y espero que te sirva para una solución rápida si estás con un problema similar.

Deja un comentario

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