Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
V tomto rychlém přehledu se pomocí Pythonu připojíte ke službě Azure SQL Database, Azure SQL Managed Instance nebo databázi Synapse SQL a pro dotazování dat použijete příkazy T-SQL.
Dokumentace mssql-python | mssql-python | Balíček (PyPI)
Požadavky
K dokončení tohoto rychlého startu je potřeba:
Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
Databáze
K vytvoření a konfiguraci databáze můžete použít jeden z těchto rychlých startů:
Akce Databáze SQL SQL Managed Instance SQL Server na virtuálním počítači Azure Azure Synapse Analytics Vytvořte Portal Portal Portal Portal Rozhraní příkazového řádku Rozhraní příkazového řádku PowerShell PowerShell PowerShell PowerShell Šablona nasazení Šablona nasazení Šablona nasazení Šablona nasazení Konfigurovat Pravidlo brány firewall protokolu IP na úrovni serveru Připojení z virtuálního počítače Nastavení připojení Připojení z místního prostředí Připojení k instanci SQL Serveru Získání informací o připojení Azure SQL Azure SQL Virtuální počítač SQL Synapse SQL Python 3
Pokud ještě nemáte Python, nainstalujte z python.org správce balíčků Python runtime a Python Package Index (PyPI).
Raději nepoužíváte vlastní prostředí? Otevřete jako devcontainer pomocí GitHub Codespaces.
Databáze na SQL serveru, Azure SQL Database nebo SQL databázi ve Fabric, obsahující ukázkové
AdventureWorks2025schéma a platný připojovací řetězec.
Instalace
Podle těchto kroků nakonfigurujte vývojové prostředí pro vývoj aplikace pomocí ovladače Pythonu mssql-python .
Poznámka:
Tento ovladač používá protokol TDS (Tabular Data Stream), který je ve výchozím nastavení povolený v SQL Serveru, databázi SQL v Prostředcích infrastruktury a Azure SQL Database. Nevyžaduje se žádná další konfigurace.
Instalace balíčku mssql-python
Z PyPI stáhněte balíčekmssql-python.
Otevřete příkazový řádek v prázdném adresáři.
Nainstalujte balíček
mssql-python.pip install mssql-python
Instalace balíčku python-dotenv
Získejte balíček z python-dotenv PyPI.
Ve stejném adresáři nainstalujte
python-dotenvbalíček.pip install python-dotenv
Kontrola nainstalovaných balíčků
Pomocí nástroje příkazového řádku PyPI můžete ověřit, že jsou nainstalované požadované balíčky.
Zkontrolujte seznam nainstalovaných balíčků s příponou
pip list.pip list
Vytvoření nových souborů
V aktuálním adresáři vytvořte nový soubor s názvem
.env..envV souboru přidejte položku pro připojovací řetězec s názvemSQL_CONNECTION_STRING. Nahraďte zástupné symboly<database-server-name>a<database-name>vlastními hodnotami.Ovladač mssql-python má integrovanou podporu ověřování Microsoft Entra. Pomocí parametru
Authenticationzadejte metodu ověřování.ActiveDirectoryDefaultautomaticky zjistí přihlašovací údaje z více zdrojů bez nutnosti interaktivního přihlášení. Tato možnost se doporučuje pro místní vývoj a funguje ve Windows, macOS a Linuxu.V případě nejspolehlivějšího místního vývojového prostředí se nejprve přihlaste pomocí Azure CLI:
az loginPak v
.envsouboru použijte tento formát připojovacího řetězce:SQL_CONNECTION_STRING="Server=<database-server-name>.database.windows.net;Database=<database-name>;Authentication=ActiveDirectoryDefault;Encrypt=yes;TrustServerCertificate=no"ActiveDirectoryDefaultvyhodnotí přihlašovací údaje v následujícím pořadí:- Proměnné prostředí (pro přihlašovací údaje služebního principálu)
- Spravovaná identita (při spuštění v Azure)
-
Azure CLI (z
az login) - Visual Studio (jenom Windows)
-
Azure PowerShell (z
Connect-AzAccount)
Návod
V produkčních aplikacích použijte pro svůj scénář konkrétní metodu ověřování, abyste se vyhnuli latenci zjišťování přihlašovacích údajů:
-
Azure App Service/Functions: Použití
ActiveDirectoryMSI(spravovaná identita) -
Interaktivní přihlášení uživatele: Použití
ActiveDirectoryInteractive -
Principál služby: Použití
ActiveDirectoryServicePrincipal
Návod
Připojovací řetězec použitý zde do značné míry závisí na typu databáze SQL, ke které se připojujete. Další informace o připojovacích řetězcích a jejich syntaxi najdete v tématu DSN a klíčová slova a atributy připojovacího řetězce.
V textovém editoru vytvořte nový soubor s názvem sqltest.py.
Přidejte následující kód.
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)
Spuštění kódu
Na příkazovém řádku spusťte následující příkaz:
python sqltest.pyOvěřte, že se vrátí databáze a jejich kolace, a pak zavřete příkazové okno.
Pokud se zobrazí chyba:
Ověřte správnost názvu serveru, názvu databáze, uživatelského jména a hesla, které používáte.
Pokud kód spouštíte z místního prostředí, ověřte, že je brána firewall prostředku Azure, ke kterému se pokoušíte získat přístup, nakonfigurovaná tak, aby povolovala přístup z IP adresy vašeho prostředí.