> Grazie per la versione. Vorrei vedere un pezzetto di codice con le > operazioni che svolgi: la query, l'eccezione, la query *nell'*eccezione...
update = "UPDATE clienti.nazioni SET "+etichetta+"=%s WHERE "+etichetta2"=%s;" try: cur.execute(update, (nuovo_valore, valore_statico)) connDB.commit() except psycopg2.IntegrityError: connDB = psycopg2.connect(connessione) cur = connDB.cursor() update1 = "UPDATE clienti.anagrafica_clienti SET nazione=%s WHERE nazione=%s;" estrai = "SELECT idnazione FROM clienti.nazioni WHERE nome_nazione = %s;" cur.execute(estrai, (nome_nazione,)) id_nazione_vecchio = cur.fetchone() id_nazione_vecchio = id_nazione_vecchio[0] cur.execute(update1, (nuovo_valore, id_nazione_vecchio,)) update2 = "UPDATE clienti.nazioni SET "+etichetta+"=%s WHERE "+etichetta2+"=%s;" cur.execute(update2, (nuovo_valore, valore_statico)) connDB.commit() cur.close() connDB.close() Non ho mai postato del codice.. spero non si dovesse far in altra maniera. Le varie variabili, sono state dichiarate prima.. ma credo vadano bene tutte. Il problema è proprio nel primo update. Mi dà errore perchè cambio ina idnazione non ancora presente nella tabella nazioni.. Notte. Marco _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python