Skip site navigation (1) Skip section navigation (2)

[pgsql-ayuda] Re: Organizacion de numeros

From: Norma Cordero Sanchez <norma(at)vico(dot)fciencias(dot)unam(dot)mx>
To: pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: [pgsql-ayuda] Re: Organizacion de numeros
Date: 2000-04-26 18:01:56
Message-ID: 200004261801.NAA16889@vico.fciencias.unam.mx (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
>Saludos lista.
>Para no perder la costumbre y seguir dando lata aqui
>tengo otra pregunta para los gurues de aqui.
>
>Tengo un campo que no la he creado como llama o unica
>necesito saber como hacer ese campo unico.
>

Puedo contestar aunque no sea ninguna guru?
(pensare que la respuesta es si :)  )

Para hacer un campo unico sea este llave primaria o no,
se puede hacer con un indice:

CREATE UNIQUE INDEX nombre_indice ON tabla ( campo );


>Otra, este campo es un numero consecutivo. Como le
>hago para que cuando un usuario agrega un nuevo
>registro este campo se incremente.

Para hacer un campo consecutivo, puedes hacerlo con secuencias:

CREATE SEQUENCE nombre_secuencia;

Y para utilizarlo:

CREATE TABLE tablita (
       num_progresivo int DEFAULT nextval( 'nombre_secuencia' ),
       atr2 text
);


INSERT INTO tablita ( atr2 ) VALUES ( 'esto' );

De esta manera siempre tendras el numero siguiente al insertar
(default: de uno en uno)

Espero haberte entendido.
Ahora, lo que expones despues, eso si no te entendi bien,
pero creo que lo que buscas es tener un contador de registros.
Si es asi, pues creo que es mejor utilizar la funcion count:

select count(*) from tablita;

Bueno, ojala que sea esto lo que querias.

Saludos a todos.

NORMA


>Otra mas, este campo como la mencione es consecutivo
>cada vez que se va dando de alta un nuevo registro
>dentro de esta tabla, ahora si un usuario elimina un
>registro con ese numero se elimina tambien, entonces
>cuando se agrega un nuevo registro como este se va
>incrementando en uno ahora va a tomar el numero que le
>sigue o como esta esto.
>Dejenme explicar de otra manera.
>tengo 10 registros en una tabla. El campo id_equipo es
>el numero de cada registro. Cuando se agrega un nuevo
>registro este debe de ver cual es el ultimo numero y
>ahi incrementarse a 1 para que el nuevo registro tenga
>en el campo id_equipo el numero 11 (Creo eso no debe
>ser dificil). Ahora si se elimina el registro 5 (por
>ejemplo) que numero va a tomar el nuevo registro el
>numero 12 o el 5?
>
>Alguien me puede ayudar a solucionar este problema que
>para mi es complicado?
>
>Gracias
>sevega
>
--------- Pie de mensaje -------------------------------------------
Archivo historico: http://tlali.iztacala.unam.mx/maillist/pgsql-ayuda
Cancelar inscripcion:
mail to: majordomo(at)tlali(dot)iztacala(dot)unam(dot)mx
text   : unsubscribe pgsql-ayuda


pgsql-es-ayuda by date

Next:From: Raul FloresDate: 2000-04-26 22:57:51
Subject: [pgsql-ayuda] Primer contacto con pgsql-ayuda
Previous:From: Estrella DominguezDate: 2000-04-26 17:19:02
Subject: [pgsql-ayuda] Organizacion de numeros

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group