mssql instalar example python azure pymssql

python - instalar - pymssql: la conexión a la base de datos solo funciona a veces



python pymssql (1)

Revisé estos SO viejos hilos Falló la lectura del servidor al intentar conectarme a sql-azure desde tsql y ¿Qué es la versión 8.0 del protocolo TDS y por qué debería usarlo? . El problema parece ser causado por el uso de la versión incorrecta de FreeTDS.

Encontré la clave en la página del sitio web oficial de FreeTDS http://www.freetds.org/faq.html#Does.FreeTDS.support.Microsoft.servers .

Hay una tabla de versiones del protocolo TDS por producto http://www.freetds.org/userguide/choosingtdsprotocol.htm .

FreeTDS aliará esta versión a 7.1 por motivos de compatibilidad con versiones anteriores, pero esto debe evitarse debido a problemas de compatibilidad futura. Consulte la nota a continuación sobre las versiones obsoletas.

Si usa pymssql con FreeTDS en Linux, creo que necesita verificar el archivo de configuración "freetds.conf" en la ruta / etc / freetds /.

Esta es mi configuración para Azure SQL Server a continuación:

# A typical Microsoft server [egServer70] host = <database_name>.database.windows.net port = 1433 tds version = 7.3

Puede intentar probar la conexión con el servidor SQL de Azure utilizando la herramienta de freetds ''tsql'' para ordenar '' tsql -H <database_name>.database.windows.net -U Username -D DatabaseName -p 1433 -P Password ''.

Atentamente.

Intento conectarme al servidor SQL de Azure usando pymssql de Python. El problema es que la siguiente secuencia de comandos funciona pero solo algunas veces, las otras veces obtengo este error:

_mssql.MSSQLDatabaseException: (20002, b''DB-Lib mensaje de error 20002, gravedad 9: / n Falló la conexión de Adaptive Server / n '')

Este es el script que estoy usando:

import pymssql conn = pymssql.connect(server=''x'', user=''x'', password=''x'', database=''x'') cursor = conn.cursor() cursor.execute(''SELECT * FROM customers''); row = cursor.fetchone() while row: print (str(row[0]) + " " + str(row[1]) + " " + str(row[2])) row = cursor.fetchone()

Me sería de gran ayuda si alguien me puede decir por qué este script anterior funciona solo algunas veces y el resto del tiempo aparece el error "Adaptive Server connection failed".