Ich bin mit diesem Befehl in einem Python-Skript:psycopg2.InternalError: Wie kann ich mehr nützliche Informationen erhalten?
try:
print sql_string
cursor.execute(sql_string)
except:
print sys.exc_info()
und bekommen:
(<class 'psycopg2.InternalError'>, InternalError('current transaction is aborted, commands ignored until end of transaction block\n',), <traceback object at 0x1010054d0>)
Allerdings, wenn ich die sql_string
von der psql Befehlszeile versuchen, es funktioniert gut. Ich weiß, das Skript verbindet sich mit der Datenbank in Ordnung, weil ich andere Befehle ausführen kann.
Wie kann ich Python dazu bringen, mir nützlichere Informationen darüber zu geben, warum dieser Befehl im Skript fehlschlägt?
Mit Blick auf das Protokoll, sah ich sofort eine andere Tabelle hatte eine Einfügung fehlgeschlagen, und dies erstellt den Transaktionsblock. Die Tischplatte, die ich dachte, war das Problem, es war in Ordnung. – zerocog