2014-02-06 24 views
0

當數據庫拋出超時錯誤時,如何讓我的python腳本退出?我只得到了消息,如果我CTRL-C手動退出 - 我想獲得蟒蛇立即停止在錯誤 ..如何使python在pyodbc上退出超時錯誤?

#!/usr/bin/python 
import pyodbc 
conn = pyodbc.connect("DSN=OurDSN", autocommit=True) 
cursor = conn.cursor() 
query = "SELECT * FROM our_table limit 100" 
for row in cursor.execute(query): 
    print row 

錯誤消息:

"Traceback (most recent call last):   
File "./impala_test.py", line 6, in <module> 
conn = pyodbc.connect("OurDSN=Hive", autocommit=True) 
pyodbc.Error: ('HY000', '[HY000] [unixODBC][Cloudera][HiveODBC] (34) Error from Hive: EAGAIN (timed out). (34) (SQLDriverConnect)')" 

回答

0

pyodbc的query timeout在默認情況下被禁用。嘗試將其設置爲您想要的值?