Я использую pyodbc для подключения к моему SQL-серверу. Мои сценарии выполняются в большинстве случаев, как и ожидалось, но иногда я получаю либо из этих 3-х ошибок при выполнении сценария выполнения команды с базой данных SQL:pyodbc: Как предотвратить сбой связи, ошибки ConnectionWrite и ConnectionRead?
pyodbc.Error: ('08S01', '[08S01] [Microsoft][ODBC SQL Server Driver]Communication link failure (0) (SQLExecDirectW)')
pyodbc.Error: ('01000', '[01000] [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionWrite (send()). (10054) (SQLExecDirectW)')
pyodbc.Error: ('01000', '[01000] [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionRead (recv()). (10054) (SQLExecDirectW)')
Что я могу сделать, чтобы предотвратить это?
Редактировать: Фактические команды в моем сценарии действительно очень простые, поэтому я не упомянул об этом в своем оригинальном посте.
import pyodbc
connectionString1 = 'x'
connection1 = pyodbc.connect(connectionString1)
cursor1 = connection1.cursor()
query1 = '''
SELECT/UPDATE ...
'''
cursor1.execute(query1)
res = cursor1.fetchall()
# do some operations using res
connection1.commit()
Нам может понадобиться, чтобы увидеть реальную команду (ы). – Parfait
@Parfait, пожалуйста, проверьте отредактированный пост – 90abyss
Вы не получаете эти ошибки из-за простых операторов SELECT. Это ваша среда, как db-конфигурации, TCP-порты, сеть. Я советую об этом на [DBA Stack Exchange] (http://dba.stackexchange.com/) – Parfait