Check if pyodbc connection is open or closed
mysql, odbc, pyodbc, python
Solution
The wrapper is a good idea but I don't know any API to reliably check whether the connection is closed or not.
So the solution would be something along these lines:
for retry in range(3):
try:
... execute query ...
return # Stop on success
except e:
if is_connection_broken_error(e):
reconnect()
continue
raise
raise # throw if the retry fails too often
Problem
I often get this error: `ProgrammingError: The cursor's connection has been closed.` Is there a way to check whether the connection I am using has been closed before I attempt to execute a query? I'm thinking of writing a wrapper to execute queries. First it would check whether the connection is closed, if it is, it would reconnect. Is this an advisable way of doing this?