[Python] psycopg, cursori e connessioni: tenere occupato un id
Manlio Perillo
manlio.perillo a gmail.com
Lun 16 Maggio 2011 22:34:07 CEST
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Il 16/05/2011 21:52, Daniele Varrazzo ha scritto:
> [...]
>> Io ho bisogno, durante la compilazione del documento, di testare degli
>> inserimenti, e vorrei che l'applicazione ragionasse come se l'id fosse
>> inserito. Ma se arriva y, che l'id fosse disponibile anche per lui.
>
> Per fare quello che vuoi tu ha ragione Manlio: usare qualcosa tipo max(id)
> + 1 è la soluzione migliore. Manlio però si è dimenticato di dire di
> prendere un lock sulla tabella (in pratica gli inserimenti devono essere
> serializzati):
>
Non ho dimenticato il lock, perchè sto assumento che
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE + UPDATE su tabella di
supporto che contiene sempre l'ultimo id faccia la cosa giusta.
La tabella di supporto serve per poter fare un UPDATE invece che un
SELECT max(id).
> [...]
Ciao Manlio
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk3Rij8ACgkQscQJ24LbaUSy5wCgmR4cQ8mtGC34Nn7kxkTrCnHq
s7wAn11IGI2gdbKKLUk3z7oIUBk4RkBO
=vB9W
-----END PGP SIGNATURE-----
Maggiori informazioni sulla lista
Python