Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op:Azure SQL Database
Azure SQL Managed Instance
Azure 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 T-SQL-instructies om query's uit te voeren op gegevens.
documentatie | mssql-python-broncode | Pakket (PyPi)
Vereiste voorwaarden
U hebt het volgende nodig om deze quickstart te voltooien:
Een Azure-account met een actief abonnement. Gratis een account maken
Een database
U kunt een van deze quickstarts gebruiken om een database te maken en vervolgens te configureren:
Handeling SQL Databank SQL Beheerde Instantie SQL Server op Azure VM Azure Synapse Analytics Maak Portaal Portaal Portaal Portaal CLI CLI PowerShell PowerShell PowerShell PowerShell uitrolsjabloon uitrolsjabloon uitrolsjabloon uitrolsjabloon Configureren IP-firewallregel op serverniveau Verbinding vanuit een VM connectiviteitsinstellingen Connectiviteit vanuit de lokale omgeving Verbinding maken met een SQL Server-exemplaar Verbindingsgegevens ophalen Azure SQL Azure SQL SQL VM- Synapse SQL Python 3
Als u Python nog niet hebt, installeert u de Python-runtime en PyPI-pakketbeheer (Python Package Index) vanuit python.org.
Wilt u liever geen gebruik maken van uw eigen omgeving? Open als devcontainer met behulp van GitHub Codespaces.
Een database op SQL Server, Azure SQL Database of SQL Database in Fabric met het
AdventureWorks2022voorbeeldschema en een geldige verbindingsreeks.
Installeren
Volg deze stappen om uw ontwikkelomgeving te configureren voor het ontwikkelen van een toepassing met behulp van het mssql-python Python-stuurprogramma.
Opmerking
Dit stuurprogramma maakt gebruik van het TDS-protocol (Tabular Data Stream), dat standaard is ingeschakeld in SQL Server, SQL Database in Fabric en Azure SQL Database. Er is geen extra configuratie vereist.
Het mssql-python-pakket installeren
Haal het mssql-python pakket op uit PyPI.
Open een opdrachtprompt in een lege map.
Installeer het
mssql-python-pakket.
Python-dotenv-pakket installeren
Haal de python-dotenv uit PyPI.
Installeer het
python-dotenvpakket in dezelfde map.pip install python-dotenv
Geïnstalleerde pakketten controleren
U kunt het opdrachtregelprogramma PyPI gebruiken om te controleren of de beoogde pakketten zijn geïnstalleerd.
Controleer de lijst met geïnstalleerde pakketten met
pip list.pip list
Nieuwe bestanden maken
Maak in de huidige map een nieuw bestand met de naam
.env.Voeg in het
.envbestand een vermelding toe voor de verbindingsreeks met de naamSQL_CONNECTION_STRING. Vervang het voorbeeld hier door de werkelijke verbindingsreekswaarde.SQL_CONNECTION_STRING="Server=<server_name>;Database={<database_name>};Encrypt=yes;TrustServerCertificate=no;Authentication=ActiveDirectoryInteractive"Aanbeveling
De hier gebruikte verbindingsreeks is grotendeels afhankelijk van het type SQL-database waarmee u verbinding maakt. Als u verbinding maakt met een Azure SQL Database of een SQL-database in Fabric, gebruikt u de ODBC-verbindingsreeks op het tabblad Verbindingsreeksen. Mogelijk moet u het verificatietype aanpassen, afhankelijk van uw scenario. Zie DSN- en verbindingsreekstrefwoorden en -kenmerken voor meer informatie over verbindingsreeksen en hun syntaxis.
Maak in een teksteditor een nieuw bestand met de naam sqltest.py.
Voeg de volgende code toe.
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)
De code uitvoeren
Voer de volgende opdracht uit op een opdrachtprompt:
python sqltest.pyControleer of de databases en de bijbehorende sorteringen worden geretourneerd en sluit vervolgens het opdrachtvenster.
Als u een foutmelding krijgt:
Controleer of de servernaam, databasenaam, gebruikersnaam en wachtwoord die u gebruikt, juist zijn.
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.