Sdílet prostřednictvím


Rychlý start: Použití Pythonu k dotazování databáze ve službě Azure SQL Database nebo azure SQL Managed Instance

Platí pro:Azure SQL Database Azure SQL Managed InstanceAzure Synapse Analytics

V tomto rychlém startu se pomocí Pythonu připojíte ke službě Azure SQL Database, službě Azure SQL Managed Instance nebo k dotazování dat pomocí příkazů T-SQL.

Dokumentace mssql-pythonzdrojový kód pro mssql-pythonBalíček (PyPi)

Požadavky

K dokončení tohoto rychlého startu je potřeba:

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.

  1. Otevřete příkazový řádek v prázdném adresáři.

  2. Nainstalujte balíček mssql-python.

    pip install mssql-python
    

Instalace balíčku python-dotenv

Získejte balíček z python-dotenv PyPI.

  1. Ve stejném adresáři nainstalujte python-dotenv balíč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.

  1. Zkontrolujte seznam nainstalovaných balíčků s příponou pip list.

    pip list
    

Vytvoření nových souborů

  1. V aktuálním adresáři vytvořte nový soubor s názvem .env.

  2. .env V souboru přidejte položku pro připojovací řetězec s názvem SQL_CONNECTION_STRING. Příklad zde nahraďte skutečnou hodnotou připojovacího řetězce.

    SQL_CONNECTION_STRING="Server=<server_name>;Database={<database_name>};Encrypt=yes;TrustServerCertificate=no;Authentication=ActiveDirectoryInteractive"
    

    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. Pokud se připojujete k Azure SQL Database nebo k SQL databázi ve Fabric, použijte připojovací řetězec ODBC z karty Připojovací řetězce. Možná budete muset upravit typ ověřování v závislosti na vašem scénáři. 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.

  3. V textovém editoru vytvořte nový soubor s názvem sqltest.py.

  4. 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

  1. Na příkazovém řádku spusťte následující příkaz:

    python sqltest.py
    
  2. Ověř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í.