pyodbcでWindows認証でSQLServerにリモート接続する方法

記事内に広告が含まれています。

pythonでリモートコンピュータで稼働しているSQLServerにWIndows認証で接続するにはpyodbcを利用します。

pyodbcはPythonでODBCドライバを経由してデータベースに接続するためのライブラリです。

pyodbcを使ってSQLServerにリモート接続する

PythonでSQLServerにリモート接続するにはpyodbcを使います。

Pythonでpyodbcを使う
  • Step1
    pyodbcのインストール
    pyodbcをインストールします。
  • Step2
    SQLSeerverの設定
    SQLServer Expressの設定をします。
  • Step3
    Pythonで実行
    Pythonでコーディングして実行します。

pyodbcをインストールする

pyodbcをインストールにはpipコマンドを利用します。

pip install pyodbc

SQLServer Expressの設定をする

SQLServer Expressを利用する場合は設定が必要な場合があります。

SQLserver構成マネージャーを開きます。
SQLServer構成マネージャを開く

ここでTCP/IPが無効になっていたら右クリックしてプロパティを開いて有効に変更します。

次に「IPアドレスタグ」を選択して一番下にある「IPALL」の「TCPポート」に「1433」を設定します。

設定が完了したらSQLServerのサービスを再起動します。

SQLServerにリモート接続する

これで環境設定は完了したので、あとはPythonでコーディングを行います。

import pprint
import pyodbc

driver='{SQL Server}'
server = 'SQLServerが稼働しているサーバー名' 
database = 'データベース名' 
trusted_connection='yes'    #Windows認証YES

cnxn = pyodbc.connect('DRIVER='+driver+';SERVER='+server+';DATABASE='+database+';PORT=1433;Trusted_Connection='+trusted_connection+';')
cursor = cnxn.cursor()
cursor.execute( "SELECT * FROM test_table" )
rows = cursor.fetchall()
pprint.pprint( rows )

cursor.close()
cnxn.close()

上記のソースを実行した結果は

C:>python sqlserver_test.py
[(1, 'test1', 20, 0), (2, 'test2', 30, 1)]

になります。

まとめ

PythonでWindows認証でSQLServerにリモート接続するにはpyodbcを使えば簡単に行うことができます。

以上、pyodbcでWindows認証でSQLServerにリモート接続する方法でした。

タイトルとURLをコピーしました