2010/10/25 Marco Fochesato <marco...@libero.it>

try:
>        cur.execute(update, (nuovo_valore, valore_statico))
>        connDB.commit()
> except psycopg2.IntegrityError:
>


Ti suggerisco un altro approccio. Fai una SELECT sulla tabella nazioni, e
regolati di conseguenza. In questo modo funzionera' tutto a prescindere
dalle librerie, e da come gestiscono le transazioni. Ci sara' BEGIN
all'inizio, e COMMIT alla fine. Niente rollback e ri-begin etc.etc.

Quando scrivi codice misto python/sql, riserva le eccezioni di integrita' ai
casi che tuo programma non ha previsto, e che provvederai a gestire come
bug. In questi casi, ci sara' BEGIN all'inizio, ROLLBACK alla fine, errore a
schermo o per email, fine.

Grace Hopper disse "it's easier to ask forgiveness than it is to get
permission".. ma ha inventato il COBOL, e in SQL le best practice sono altre
:)
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a