2015-09-25 24 views

回答

1

您可以檢查該連接的屬性status

from psycopg2.extensions import STATUS_BEGIN, STATUS_READY 

if conn.status == STATUS_READY: 
    print("No transaction in progress.") 
elif conn.status == STATUS_BEGIN: 
    print("A transaction is in progress.") 

另外,該transaction status可以connection.get_transaction_status()獲得。

要手動檢查正在進行中的交易,你可以使用PostgreSQL的statistics collector

SELECT * FROM pg_stat_activity WHERE state = 'idle in transaction';