From: | uno dos <refreegrata(at)yahoo(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | duda con select for update |
Date: | 2009-06-18 21:26:39 |
Message-ID: | 192097.91647.qm@web38408.mail.mud.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Yo trabajo con postgres 8.2.
Voy a dar un ejemplo falso y tal vez sin sentido con el sólo fin de poder plantear mi duda.
1) tengo :
table ejemplo
(
codigo PK;
....
...
)
si yo hago una transaccion(con el aislamiento por defecto) y dentro un
select * from ejemplo where codigo=1 for update
bueno este select for update impediria que otras transacciones editen la fila con codigo 1 hasta que termine la transaccion.
Ahora ¿que pasa si no encuentra una fila con codigo=1?
Pasa esto:
1) Ninguna otra transacción podrá insertar una fila con codigo 1, ni tampoco podrá
cambiarle a otra fila el código al valor 1
ó pasa esto:
2) puede insertar filas con codigo 1 y también puede cambiarle el codigo a otra fila para dejarselo en 1.
Bueno, espero puedan ayudarme
From | Date | Subject | |
---|---|---|---|
Next Message | Emanuel Calvo Franco | 2009-06-18 21:37:24 | Re: duda con select for update |
Previous Message | suso | 2009-06-18 18:42:29 | Re: Bloqueo en registro-tabla |