2016-12-06 5 views
1

この問題は数えきれないほど前に発生していますが、
私はPython 2.7.12でpymssql v2.1.3を使用しています。昨日まで私のAzure SQL DBにデータを書き込むまで何度か使用したコードが何らかの理由で明示的な理由でもう何もしないことに決めました。Adaptive Serverへの接続に失敗しました(DB-Libのエラーメッセージ20002、重大度9)

ファイアウォールが設定されています。私のIPはホワイトリストにありますが、SQL Server Management Studioを使用してデータベースに接続してデータを照会できますが、pymssqlを使用して接続しようとするとこのエラーが発生します。

アプリはフラスコのWebアプリで、次は私がDBに接続する方法である:

conn = pymssql.connect(server='myserver.database.windows.net', user='[email protected]', password='mypassword', database='mydatabase') 
+0

pymssql == 2.1.1を使用することをおすすめします。それ以降のバージョンでは、自動SSLハンドシェイクを防止する変更が行われました。あるいは、pyodbcを使用することをお勧めします。https://docs.microsoft.com/en-us/azure/sql-database/sql-database-develop-python-simple –

答えて

3

そうでもない私が提起問題の解決策が、代わりにpymssql作品のpypyodbcを使用します。

conn = pypyodbc.connect(driver='{SQL Server}',server='tcp:myserver.database.windows.net,1433',database='mydatabase', uid='myusername', pwd='mypassword') 
1

これはおそらくpymssqlバージョンのためです。 pymssqlをアップグレードしましたか?はいの場合は、2.1.1に戻ってください。

sudo pip install pymssql==2.1.1 
関連する問題