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

Re: tomando el maximo valor

From: Javier Chavez Barra <jchavezb(at)gmail(dot)com>
To: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: Raúl Andrés Duque <ra_duque(at)yahoo(dot)com(dot)mx>, MIGUEL CANCHAS <mcanchas(at)tsr(dot)com(dot)pe>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: tomando el maximo valor
Date: 2007-11-25 14:46:08
Message-ID: 47498AB0.50107@gmail.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Alvaro Herrera escribió:
> Javier Chavez Barra escribió:
>   
>> Raúl Andrés Duque escribió:
>>     
>
>   
>>>> Entiendo que quiere guardar un campo id calculado... pero creo que es 
>>>> mejor :
>>>> 1.- Calcularlo en el insert
>>>> 2.- controlar el NULL
>>>>
>>>>                        Select Coalesce(max(foo),0)+1 as foo
>>>>                       from foo
>>>>                     Where ....
>>>>
>>>> Es eso lo que quieres hacer o no???
>>>>         
>>> Pero esto sólo sirve en ambiente monousuario ... en sistemas con 
>>> concurrencia te vuelves loco.
>>>       
>
>   
>> Eso lo controla el motor no??
>>     
>
> Para nada.  No solo esta tecnica es horrible de lenta, sino que ademas
> esta sujeta a condiciones de carrera como dice Raúl.
>
> Las secuencias (campos autoincrementales) se inventaron _precisamente_
> para evitarse este problema.
>
>   
>> se entiende que se ejecuta cuando haces la sentencia de insert ...
>>     
>
> No es asi, porque las transacciones se pueden ejecutar concurrentemente
> y por un tema de aislacion la tupla que una vaya a estar insertando no
> sera visible para la otra.
>
>   
>> en todo caso es la respuesta a lo que preguntaron a lo que apuntaba era ke 
>> tenias que controlar el null por otro lado me ha quedado mas que claro que 
>> en PG puedes usar a voluntad campos autoincrementables :0)
>>     
>
> Lo de los NULL es un pelo de la cola.
>
>   
Insisto yo respondi a lo que me preguntaron jejeje :o)  bueno gracias de 
todas formas... en todo caso ya aprendi la leccion en los correos 
anteriores señores profesores .. usare en PG campos autoincrementables!!! 
Slds.
J.

In response to

pgsql-es-ayuda by date

Next:From: Moises Alberto Lindo GutarraDate: 2007-11-25 14:50:02
Subject: Re: Consulta BI
Previous:From: Sebastián VillalbaDate: 2007-11-25 14:46:00
Subject: RE: Tutoriales e info=?ISO-8859-1?Q?rmaci=F3n_de_Postgre?=s (Era: Help !!!)

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