[Pgsql-ayuda] Tipo SERIAL: ¿Bug o feature?

Roberto Andrade Fonseca randrade@abl.com.mx
18 Feb 2004 18:21:07 -0600


Hola:

Tengo una tabla en donde generé una llave primaria compuesta, compuesta
por un campo tipo SERIAL (caracteristica) y un campo entero
(desarrollo).

Al insertar los registros para el primer desarrollo, obtengo:
caracteristica	desarrollo
--------------------------
1		1
2		1
3		1
4		1

Pero al crear un segundo desarrollo, e insertar  nuevos registros,
obtengo, para mi sorpresa:
caracteristica	desarrollo
--------------------------
1		2
2		2

es decir, la secuencia de mi campo SERIAL, utiliza enteros ya existentes
en la tabla.

Seguramente este comportamiento se debe a que utilicé una llave
compuesta entre caracteristica y desarrollo, de tal manera que PostreSQL
sabe que la maezcla del par de datos sigue siendo irrepetible.

Sin embargo,me surgen algunas dudas:

a. ¿Es este un comportamiento normal?
b. ¿Siempres ha sido así, o es algo noveodoso?
c. ¿Es compatible con SQL92?
d. ¿Oracle o Informix se comportan de la misma manera?

Gracias de antemano por sus comentarios.

Por cierto, tuve el gusto de conocer a Alvaro Herrera y a su novia en el
CONSOL en México, la semana pasada. Desgraciadamente no pudimos charlar
lo que hubiéramos deseado.

-- 
Saludos

Roberto Andrade Fonseca
Microsoft Certified Solitaire Player