Quickstart: Python gebruiken om een query uit te voeren op een database in Azure SQL Database of Azure SQL Managed Instance

Van toepassing op: Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

In deze quickstart gebruikt u Python om verbinding te maken met Azure SQL Database, Azure SQL Managed Instance, of Synapse SQL Database, en gebruikt u Transact-SQL-instructies om een query uit te voeren op gegevens.

Vereisten

U hebt het volgende nodig om deze snelstartgids te voltooien:

Als u Python en de database in Azure SQL Database verder wilt verkennen, raadpleegt u Azure SQL Database-bibliotheken voor Python, de pyodbc-opslagplaats en een pyodbc-voorbeeld.

Code maken om query's uit te voeren op uw database

  1. Maak in een teksteditor een nieuw bestand met de naam sqltest.py.

  2. Voeg de volgende code toe: Haal de verbindingsgegevens op uit de sectie Vereisten en vervang uw eigen waarden door <server>, <database>, <gebruikersnaam> en <wachtwoord>.

    import pyodbc
    server = '<server>.database.windows.net'
    database = '<database>'
    username = '<username>'
    password = '{<password>}'
    driver= '{ODBC Driver 17 for SQL Server}'
    
    with pyodbc.connect('DRIVER='+driver+';SERVER=tcp:'+server+';PORT=1433;DATABASE='+database+';UID='+username+';PWD='+ password) as conn:
        with conn.cursor() as cursor:
            cursor.execute("SELECT TOP 3 name, collation_name FROM sys.databases")
            row = cursor.fetchone()
            while row:
                print (str(row[0]) + " " + str(row[1]))
                row = cursor.fetchone()
    

De code uitvoeren

  1. Voer de volgende opdracht uit op een opdrachtprompt:

    python sqltest.py
    
  2. Controleer of de databases en de bijbehorende sorteringen zijn geretourneerd. Sluit vervolgens het opdrachtvenster.

    Als u een foutmelding krijgt:

    • Controleer of de servernaam, databasenaam, gebruikersnaam en wachtwoord die u gebruikt, juist zijn.
    • Controleer of het ODBC-stuurprogramma dat u hebt geïnstalleerd, dezelfde versie is als de driver variabele in de bovenstaande code. De code toont bijvoorbeeld 17, maar mogelijk hebt u een andere versie geïnstalleerd.
    • Als u de code uitvoert vanuit een lokale omgeving, controleert u of de firewall van de Azure-resource die u probeert te openen, is geconfigureerd om toegang vanaf het IP-adres van uw omgeving toe te staan.

Volgende stappen