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

Re: Como hacer un contador

From: Bruno Unna <bruno(at)iac(dot)com(dot)mx>
To: pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: Re: Como hacer un contador
Date: 1998-10-06 23:28:56
Message-ID: 361AA7B8.E00F4474@iac.com.mx (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Montse wrote:
> 
> Hola a todos
> 
>         Tengo un duda respecto a las tablas de postgres. Necesito controlar los
> registros de cada tabla y para ello he creado tablas independientes que
> hacen de contadores. Mi problema es el siguiente:
> 
> Como hago para seleccionar el último registro de la tabla contadores,
> incrementarlo en una unidad y volver a almacenar el nuevo valor. Puedo
> conseguir que la tabla contadores tenga siempre un solo registro para
> que este proceso resulte mas sencillo.
> 
> Muchas gracias
> 
> Montse
> mailto:mons(at)ictnet(dot)es
> --------- 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   : cancelacion pgsql-ayuda

Montse, la solución que estás usando no es la mejor. Borra tus 
tablas-contadores, sugiero, y crea 'secuencias':

create sequence nombre_de_la_secuencia;

es la sintaxis más simple.

Ahora, haz un experimento:

select nextval('nombre_de_la_secuencia');

Repite esta última línea varias veces; verás que siempre te 
entrega el valor siguiente. Ahora, si quieres usar una secuencia 
en tus tablas, puedes hacer algo como:

insert into tablita(campo_llave, otro_campo) 
values (nextval('nombre_de_la_secuencia'), 'Otro valor');

Más fácil, ¿verdad?
-- 
"Create like a god,                Bruno Unna <bruno(at)iac(dot)com(dot)mx>
 command like a king,                     Desarrollo de Software
 and work like a slave."                Internet de Alta Calidad
             Kawasaki                   PGP public key available
--------- 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   : cancelacion pgsql-ayuda

In response to

pgsql-es-ayuda by date

Next:From: MontseDate: 1998-10-07 03:42:56
Subject: Como hacer un contador
Previous:From: La Mancha de la Calabaza que LadraDate: 1998-10-06 21:11:15
Subject: Re: Orientacion

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