Monday, July 21, 2008

[pgsql-es-ayuda] Re: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] Indice autonumérico

--- El lun 21-jul-08, frank <frankyfa@gmail.com> escribió:

> De: frank <frankyfa@gmail.com>
> Asunto: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] Indice autonumérico
> A: pgsql-es-ayuda@postgresql.org
> Fecha: lunes, 21 julio, 2008, 5:17 pm
> Pero si el PGAdmin III no me muestra el tipo de dato serial
> entonces cómo podría hacer para que el campo ID de una
> tabla X sea autonumerico?
>
> Dicho campo lo tengo definido como int4.
>
> Como comentaba lo de las secuencias, el PGAdmin III me da
> la opción de crear secuencias (sequence), creé una con
> incremento de 1 pero al momento de crear un campo en una
> tabla no puedo vincular dicho campo a ninguna secuencia
> pues aparece esta opción pero deshabilitada.
>
> >
> > 2008/7/21 frank <frankyfa@gmail.com>:
> > > Disculpen mi ignorancia pero estoy utilizando el
> PGAdmin III para adminisdtrar la
> > BD y no veo el tipo de datos serial. Lo que hay por
> allí es algo para crear secuencias
> > pero no se si esto sirve para mis propósitos ya que
> no puedo hacer funcionar estas
> > secuencias y la verdad no entiendo la documentación
> de esta parte.
> > >
> >
> > el pgadmin no mostraba (en la epoca del 8.1 hacia
> atras) el tipo de
> > de datos serial porque no es un tipo de dato, es solo
> una forma
> > abreviada de crear una secuencia, y crear un campo
> integer que tenga
> > como valor default un nextval de la secuencia
>
>
> --
> TIP 8: explain analyze es tu amigo

Si lees bien el theread ya te pues la forma cuando puse a manopla, quise decir a mano, con un poco mas de escritura, o sea un poco mas de esfuerzo.

Mi castellano a veces es muy malo, pero por las dudas te pongo el ejemplo de nuevo que desde el lugar de escritura de sentencias de pgadmin III lo puedes ejecutar adaptandolo a tu caso

no recuerdo muy bien, prueba con:
- crear una serie
- crear una tabla y en el campo poner de default la funcion que devuelve el
proximo de la serie.

sería algo así (no lo he probado):

CREATE SEQUENCE identity1;
CREATE TABLE prueba (
id BIGINT PRIMARY KEY DEFAULT NEXTVAL('identity1'),
otrocampo VARCHAR(100)
);

Atte.
Gabriel Colina


____________________________________________________________________________________
Yahoo! MTV Blog & Rock &gt;¡Cuéntanos tu historia, inspira una canción y gánate un viaje a los Premios MTV! Participa aquí http://mtvla.yahoo.com/
--
TIP 6: ¿Has buscado en los archivos de nuestra lista de correo?
http://archives.postgresql.org/pgsql-es-ayuda

No comments: