Saludos Seyko
Cita:
Iniciado por seyko
Incorrecto, primero un campo serial te crea una secuencia y le da un valor por defecto al campo donde se crea, NO tiene nada que ver con una PK ni con unique, otro tema es que normalmente al campo de PK se crea con un "tipo" serial.
Al crear un campo serial, este resuelve "automágicamente" ser un campo unique key y not null, no hay que especificarlo, pero así se crea... por eso lo de "automágicamente".
Cita:
Iniciado por seyko
En segundo lugar si que puedes agregar/eliminar un unique key a un campo con un alter!!
Previo a responder, miré:
Código:
pruebas=# \h ALTER TABLE
Comando: ALTER TABLE
Descripción: cambia la definición de una tabla
Sintaxis:
ALTER TABLE [ ONLY ] nombre [ * ]
acción [, ... ]
ALTER TABLE [ ONLY ] nombre [ * ]
RENAME [ COLUMN ] columna TO nueva_columna
ALTER TABLE nombre
RENAME TO nuevo_nombre
ALTER TABLE nombre
SET SCHEMA nuevo_nombre
donde acciónes una de:
ADD [ COLUMN ] columna tipo [ restricción_de_columna [ ... ] ]
DROP [ COLUMN ] columna [ RESTRICT | CASCADE ]
ALTER [ COLUMN ] columna TYPE type [ USING expresión ]
ALTER [ COLUMN ] columna SET DEFAULT expresión
ALTER [ COLUMN ] columna DROP DEFAULT
ALTER [ COLUMN ] columna { SET | DROP } NOT NULL
ALTER [ COLUMN ] columna SET STATISTICS entero
ALTER [ COLUMN ] columna SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN }
ADD restricción_de_tabla
DROP CONSTRAINT nombre_de_restricción [ RESTRICT | CASCADE ]
DISABLE TRIGGER [ nombre_disparador | ALL | USER ]
ENABLE TRIGGER [ nombre_disparador | ALL | USER ]
CLUSTER ON nombre_índice
SET WITHOUT CLUSTER
SET WITHOUT OIDS
OWNER TO nuevo_dueño
SET TABLESPACE nueva_tablespace
al no ver nada explícito que me indicara que podía agregar/eliminar un unique key, pues, respondí... y la verdad, sigo sin saber por dónde va....?