Dela via


Snabbstart: Använda Python för att fråga en databas i Azure SQL Database eller Azure SQL Managed Instance

gäller för:Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

I den här snabbstarten använder du Python för att ansluta till Azure SQL Database, Azure SQL Managed Instance eller Synapse SQL Database och använder T-SQL-uttryck för att fråga efter data.

mssql-python-dokumentation | mssql-python-källkod | Paket (PyPi)

Förutsättningar

För att slutföra den här snabbstarten behöver du:

Förbereda

Följ de här stegen för att konfigurera utvecklingsmiljön för att utveckla ett program med hjälp av Python-drivrutinen mssql-python .

Anmärkning

Den här drivrutinen använder TDS-protokollet (Tabular Data Stream), som är aktiverat som standard i SQL Server, SQL Database i Fabric och Azure SQL Database. Ingen extra konfiguration krävs.

Installera mssql-python-paketet

mssql-python Hämta paketet från PyPI.

  1. Öppna en kommandotolk i en tom katalog.

  2. Installera paketet mssql-python.

    pip install mssql-python
    

Installera python-dotenv-paket

Hämta python-dotenv från PyPI.

  1. Installera paketet i python-dotenv samma katalog.

    pip install python-dotenv
    

Kontrollera installerade paket

Du kan använda kommandoradsverktyget PyPI för att kontrollera att dina avsedda paket är installerade.

  1. Kontrollera listan över installerade paket med pip list.

    pip list
    

Skapa nya filer

  1. I den aktuella katalogen skapar du en ny fil med namnet .env.

  2. I .env-filen lägger du till en post för din anslutningssträng med namnet SQL_CONNECTION_STRING. Ersätt exemplet här med det faktiska anslutningssträngsvärdet.

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

    Tips/Råd

    Anslutningssträngen som används här beror till stor del på vilken typ av SQL-databas du ansluter till. Om du ansluter till en Azure SQL Database eller en SQL-databas i Fabric använder du ODBC-anslutningssträngen från fliken Anslutningssträngar. Du kan behöva justera autentiseringstypen beroende på ditt scenario. Mer information om anslutningssträngar och deras syntax finns i nyckelord och attribut för DSN och anslutningssträngar.

  3. Skapa en ny fil med namnet sqltest.py i en textredigerare.

  4. Lägg till följande 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)
    

Kör koden

  1. Kör följande kommando i en kommandotolk:

    python sqltest.py
    
  2. Kontrollera att databaserna och deras sorteringar returneras och stäng sedan kommandofönstret.

    Om du får ett fel:

    • Kontrollera att servernamnet, databasnamnet, användarnamnet och lösenordet som du använder är korrekta.

    • Om du kör koden från en lokal miljö kontrollerar du att brandväggen för den Azure-resurs som du försöker komma åt har konfigurerats för att tillåta åtkomst från din miljös IP-adress.