Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
W tym przewodniku szybkiego startu użyjesz języka Python, aby nawiązać połączenie z Azure SQL Database, Azure SQL Managed Instance lub bazą danych Synapse SQL i używać instrukcji T-SQL do wykonywania zapytań o dane.
Dokumentacja mssql-python | kod źródłowy mssql-python | Pakiet (PyPI)
Wymagania wstępne
Aby ukończyć ten przewodnik Szybki Start, musisz spełnić następujące warunki:
Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
Baza danych
Możesz użyć jednego z tych szybkich startów, aby utworzyć, a następnie skonfigurować bazę danych.
Akcja Baza danych SQL SQL Managed Instance Program SQL Server na maszynie wirtualnej platformy Azure Azure Synapse Analytics Utwórz Portal Portal Portal Portal Interfejs wiersza polecenia Interfejs wiersza polecenia PowerShell PowerShell PowerShell PowerShell Szablon wdrożenia Szablon wdrożenia Szablon wdrożenia Szablon wdrożenia Konfiguruj Reguła zapory bazująca na adresach IP na poziomie serwera Łączność z maszyny wirtualnej Ustawienia łączności Łączność ze środowiska lokalnego Nawiązywanie połączenia z wystąpieniem programu SQL Server Pobieranie informacji o połączeniu Azure SQL Azure SQL Maszyna wirtualna SQL Synapse SQL Python 3
Jeśli nie masz jeszcze języka Python, zainstaluj środowisko uruchomieniowe języka Python i menedżera pakietów python (PyPI) z python.org.
Wolisz nie używać własnego środowiska? Otwórz jako devcontainer przy użyciu usługi GitHub Codespaces.
Baza danych w programie SQL Server, usłudze Azure SQL Database lub bazie danych SQL w usłudze Fabric z przykładowym
AdventureWorks2025schematem i prawidłowymi parametrami połączenia.
Konfigurowanie
Wykonaj następujące kroki, aby skonfigurować środowisko deweloperskie do tworzenia aplikacji przy użyciu mssql-python sterownika języka Python.
Uwaga / Notatka
Ten sterownik używa protokołu strumienia danych tabelarycznych (TDS), który jest domyślnie włączony w SQL Server, bazie danych SQL w Fabric oraz Azure SQL Database. Nie jest wymagana żadna dodatkowa konfiguracja.
Instalowanie pakietu mssql-python
mssql-python Pobierz pakiet z PyPI.
Otwórz wiersz polecenia w pustym katalogu.
Zainstaluj pakiet
mssql-python.
Instalowanie pakietu python-dotenv
Pobierz element python-dotenv z PyPI.
W tym samym katalogu zainstaluj pakiet
python-dotenv.pip install python-dotenv
Sprawdzanie zainstalowanych pakietów
Możesz użyć narzędzia wiersza polecenia PyPI, aby sprawdzić, czy są zainstalowane zamierzone pakiety.
Sprawdź listę zainstalowanych pakietów za pomocą polecenia
pip list.pip list
Tworzenie nowych plików
W bieżącym katalogu utwórz nowy plik o nazwie
.env.W pliku
.envdodaj wpis dla łańcucha połączenia o nazwieSQL_CONNECTION_STRING. Zastąp symbole zastępcze<database-server-name>i<database-name>własnymi wartościami.Sterownik mssql-python ma wbudowaną obsługę uwierzytelniania Entra firmy Microsoft. Użyj parametru ,
Authenticationaby określić metodę uwierzytelniania.- ActiveDirectoryDefault (zalecane)
- Uwierzytelnianie interakcyjne
- Uwierzytelnianie SQL
- Fabric SQL baza danych
ActiveDirectoryDefaultautomatycznie odnajduje poświadczenia z wielu źródeł bez konieczności logowania interakcyjnego. Jest to zalecana opcja programowania lokalnego i działa w systemach Windows, macOS i Linux.Aby uzyskać najbardziej niezawodne środowisko programowania lokalnego, najpierw zaloguj się przy użyciu interfejsu wiersza polecenia platformy Azure:
az loginNastępnie użyj tego formatu parametrów połączenia w
.envpliku:SQL_CONNECTION_STRING="Server=<database-server-name>.database.windows.net;Database=<database-name>;Authentication=ActiveDirectoryDefault;Encrypt=yes;TrustServerCertificate=no"ActiveDirectoryDefaultocenia poświadczenia w następującej kolejności:- Zmienne środowiskowe (dla poświadczeń jednostki usługi)
- Tożsamość zarządzana (w przypadku uruchamiania na platformie Azure)
-
Interfejs wiersza polecenia platformy Azure (z
az login) - Visual Studio (tylko system Windows)
-
Azure PowerShell (z
Connect-AzAccount)
Wskazówka
W przypadku aplikacji produkcyjnych użyj określonej metody uwierzytelniania dla danego scenariusza, aby uniknąć opóźnienia odnajdywania poświadczeń:
-
Azure App Service/Functions: użyj
ActiveDirectoryMSI(tożsamość zarządzana) -
Logowanie użytkownika interakcyjnego: użyj polecenia
ActiveDirectoryInteractive -
Usługa główna: użyj
ActiveDirectoryServicePrincipal
Wskazówka
Parametry połączenia używane w tym miejscu w dużej mierze zależą od typu bazy danych SQL, z którą nawiązujesz połączenie. Aby uzyskać więcej informacji na temat parametrów połączenia i ich składni, zobacz DSN i Parametry połączenia Słowa kluczowe i atrybuty.
W edytorze tekstów utwórz nowy plik o nazwie sqltest.py.
Dodaj następujący kod.
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)
Uruchamianie kodu
W wierszu polecenia uruchom następujące polecenie:
python sqltest.pySprawdź, czy bazy danych i ich sortowania są zwracane, a następnie zamknij okno polecenia.
Jeśli wystąpi błąd:
Sprawdź, czy używana nazwa serwera, nazwa bazy danych, nazwa użytkownika i hasło są poprawne.
Jeśli używasz kodu ze środowiska lokalnego, sprawdź, czy zapora zasobu platformy Azure, do którego próbujesz uzyskać dostęp, jest skonfigurowana tak, aby zezwolić na dostęp z adresu IP środowiska.