Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/04/2010, 21:48
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: cambiar de tipo int a serial

Por que realmente serial no es un tipo de dato.

Cuando se crea un dato serial, realmente se crea un integer y se crea implicitamente una secuencia con valor por defecto para ese campo. Fijate en esto
Código SQL:
Ver original
  1. pruebas=> CREATE TABLE t1(id serial,otro text);
  2. NOTICE:  CREATE TABLE creará una secuencia implícita «t1_id_seq» para la columna serial «t1.id»
  3. CREATE TABLE
  4. pruebas=> \d t1;
  5.                            Tabla ½public.t1╗
  6.  Columna |  Tipo   |                      Modificadores
  7. ---------+---------+----------------------------------------------------------
  8.  id      | INTEGER | NOT NULL valor por omisin NEXTVAL('t1_id_seq'::regclass)
  9.  otro    | text    |

Lo que puedes hacer, es crear una secuencia aparte y hacer un alter table para que el valor por defecto sea la secuencia y simular exactamente lo que hace el "tipo de dato" serial.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming