Intento la segunda y me sale algo de permiso denegado
El 11 de diciembre de 2013 13:42, Jaime Casanova <ja...@2ndquadrant.com>escribió: > 2013/12/11 Milton Labanda <1000ton....@gmail.com>: > > Hola amigos, espero haya sido un éxito el PgDay 2013. > > Saludos, > > Bastante bonito me parecio > > > Que me aconsejan para modificar el valor de una clave primaria en un > sistema > > que por error de diseño, le pusieron como clave primaria el numero de > cédula > > en una tabla estudiante. > > Hay como desactivar temporalmente los constraint FK ? o alguna otra > > solución? que no sea el tener que crear otro registro y migrar los datos. > > > > Si tus constraints fueron creados con la opcion DEFERRABLE (el > predeterminado es NOT DEFERRABLE asi que si no lo hiciste pasa al > siguiente parrafo) basta con abrir una transacción y ejecutar SET > CONSTRAINTS {ALL | nombre} DEFERRED; hacer los cambios que necesites y > asegurarte que antes del commit todo sea consistente. > (http://www.postgresql.org/docs/9.3/static/sql-set-constraints.html) > > La otra alternativa es deshabilitar los triggers en los que estan > basados los constraints, los FK se implementan a traves de triggers > especiales pero puedes deshabilitarlos con: ALTER TABLE nombre DISABLE > TRIGGER {ALL | nombre}. Asegurate de rehabilitar los triggers una vez > que hiciste lo que quieres hacer. > > La diferencia entre ambos es que el primero es por transacción, el > segundo afecta a todo el mundo. Es decir, nadie tendra habilitado los > FK > > -- > Jaime Casanova www.2ndQuadrant.com > Professional PostgreSQL: Soporte 24x7 y capacitación > Phone: +593 4 5107566 Cell: +593 987171157 > -- /\/\;/----------------------------------------------------- Milton Labanda [miltonlab] Distro: Debian GNU/Linux 6.0 Squeeze Blog: http://1000tonlab.wordpress.com jabber: milton...@jabber.org <milotn...@jabber.org> "... Solamente la libertad que se somete a la Verdad conduce a la persona humana a su verdadero bien...". Karol Wojtyla (:\ Usa Software Legal, usa Software Libre /:)