[pyar] Nombres unicos para tablas

Roberto Alsina ralsina en netmanagers.com.ar
Vie Jun 18 16:57:15 ART 2010


On Friday 18 June 2010 16:53:29 Roberto Alsina wrote:
> On Friday 18 June 2010 16:45:39 Ricardo Aráoz wrote:
> > >> Dado que es dentro de una bd, por qué no usarla? Creás una
> > >> tabla(nomUsados) con un campo caracter que sea también la clave
> > >> primaria. Después inventás un nombre de tabla, y tratás de guardarlo
> > >> en nomUsados, si no podés es porque está usado, si podés entonces ese
> > >> nombre queda reservado para tu proceso, cuando terminás de usar el
> > >> nombre lo borrás de nomUsados.
> > >>
> > >>      
> > >>
> > > Para que **eso** no tenga race condition tenés que meterlo en una
> > > transacción. O sea... ponerle un lock alrededor ;-)
> >
> > En realidad la bd resuelve "eso" sola. Y creo que no necesitás una 
> > transacción. Es un simple insert en la bd que puede tener éxito o no, si 
> > no lo tiene probás con otro nombre, no veo para qué la transacción (no 
> > estoy grabando multiples registros relacionados de forma atómica, es 
> > sólo uno).
> 
> Ok, ahí tenés razón, escribir un registro que no se puede repetir es
> atómico.

Y ahora que lo pienso... no hace falta. Si el asunto es crear una tabla, 
CREATE TABLE también es atómico.



More information about the pyar mailing list