適用対象:Azure SQL データベース
Azure SQL Managed Instance
Azure Synapse Analytics
このクイックスタートでは、Python を使用して Azure SQL Database、Azure SQL Managed Instance、または Synapse SQL データベースに接続し、T-SQL ステートメントを使用してデータに対してクエリを実行します。
mssql-python のドキュメント | mssql-python ソース コード | パッケージ (PyPi)
前提条件
このクイック スタートを完了するには、次のものが必要です。
アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成できます。
データベース
次のいずれかのクイックスタートを使用して、データベースを作成し、構成できます。
アクション SQL Database SQL Managed Instance Azure VM 上の SQL Server Azure Synapse Analytics 作成 ポータル ポータル ポータル ポータル CLI CLI PowerShell PowerShell PowerShell PowerShell デプロイ テンプレート デプロイ テンプレート デプロイ テンプレート デプロイ テンプレート 構成 サーバーレベルの IP ファイアウォール規則 VM からの接続 接続の設定 オンプレミスからの接続 SQL Server インスタンスに接続する 接続情報の取得 Azure SQL Azure SQL SQL VM Synapse SQL Python 3
Python をまだお持ちでない場合は、python ランタイムと Python Package Index (PyPI) パッケージ マネージャーを python.org からインストールします。
独自の環境を使用したくないですか? GitHub Codespaces を使用して devcontainer として開きます。
Fabric の SQL Server、Azure SQL Database、または SQL データベースにある、
AdventureWorks2022
サンプルスキーマと有効な接続文字列を備えたデータベース。
セットアップ中
次の手順に従って、 mssql-python
Python ドライバーを使用してアプリケーションを開発するように開発環境を構成します。
注
このドライバーは、 表形式データ ストリーム (TDS) プロトコルを使用します。このプロトコルは、SQL Server、ファブリックの SQL データベース、Azure SQL Database で既定で有効になっています。 追加の構成は必要ありません。
mssql-python パッケージをインストールする
PyPI から mssql-python
パッケージ を取得します。
空のディレクトリでコマンド プロンプトを開きます。
mssql-python
パッケージをインストールします。
python-dotenv パッケージをインストールする
PyPI から python-dotenv
を取得します。
同じディレクトリに、
python-dotenv
パッケージをインストールします。pip install python-dotenv
インストールしたパッケージを確認する
PyPI コマンド ライン ツールを使用して、目的のパッケージがインストールされていることを確認できます。
pip list
を使用して、インストールされているパッケージの一覧を確認します。pip list
新しいファイルを作成する
現在のディレクトリに、
.env
という名前の新しいファイルを作成します。.env
ファイル内に、SQL_CONNECTION_STRING
という名前の接続文字列のエントリを追加します。 ここでの例を実際の接続文字列の値に置き換えます。SQL_CONNECTION_STRING="Server=<server_name>;Database={<database_name>};Encrypt=yes;TrustServerCertificate=no;Authentication=ActiveDirectoryInteractive"
ヒント
ここで使用される接続文字列は、接続先の SQL データベースの種類によって大きく異なります。 Fabric で Azure SQL Database または SQL データベースに接続する場合は、[接続文字列] タブから ODBC 接続文字列を使用します。シナリオによっては、認証の種類の調整が必要になる場合があります。 接続文字列とその構文の詳細については、「 DSN と接続文字列のキーワードと属性」を参照してください。
任意のテキスト エディターで新しいファイル (sqltest.py) を作成します。
次のコードを追加します。
from os import getenv from dotenv import load_dotenv from mssql_python import connect load_dotenv() with connect(getenv("SQL_CONNECTION_STRING")) as conn: with conn.cursor() as cursor: cursor.execute("SELECT TOP 3 name, collation_name FROM sys.databases") rows = cursor.fetchall() for row in rows: print(row.name, row.collation_name)
コードの実行
コマンド プロンプトで、次のコマンドを実行します。
python sqltest.py
データベースとその照合順序が返されていることを確認し、コマンド ウィンドウを閉じます。
エラーが発生した場合:
使用しているサーバー名、データベース名、ユーザー名、パスワードが正しいことを確認してください。
ローカル環境からコードを実行している場合、アクセスしようとしている Azure リソースのファイアウォールが、お使いの環境の IP アドレスからのアクセスを許可するように構成されていることを確認してください。