Partager via


Démarrage rapide : utiliser Python pour interroger une base de données dans la base de données Azure SQL ou Azure SQL Managed Instance

S’applique :Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

Dans ce guide de démarrage rapide, vous utilisez Python pour vous connecter à Azure SQL Database, Azure SQL Managed Instance ou une base de données Synapse SQL, puis utilisez des instructions T-SQL pour interroger les données.

documentation mssql-python | code source mssql-python | Package (PyPi)

Prérequis

Pour effectuer ce démarrage rapide, les éléments suivants sont requis :

Configuration

Suivez ces étapes pour configurer votre environnement de développement pour développer une application à l’aide du mssql-python pilote Python.

Note

Ce pilote utilise le protocole TDS (Tabular Data Stream), qui est activé par défaut dans SQL Server, sql Database dans Fabric et Azure SQL Database. Aucune configuration supplémentaire n’est requise.

Installer le package mssql-python

Obtenez le mssql-python package à partir de PyPI.

  1. Ouvrez une invite de commandes dans un répertoire vide.

  2. Installez le package mssql-python.

    pip install mssql-python
    

Installer le package python-dotenv

Obtenez le python-dotenv de PyPI.

  1. Dans le même répertoire, installez le python-dotenv package.

    pip install python-dotenv
    

Vérifier les packages installés

Vous pouvez utiliser l’outil en ligne de commande PyPI pour vérifier que vos packages prévus sont installés.

  1. Vérifiez la liste des packages installés avec pip list.

    pip list
    

Créer des fichiers

  1. Dans le répertoire actif, créez un fichier nommé .env.

  2. Dans le .env fichier, ajoutez une entrée pour votre chaîne de connexion nommée SQL_CONNECTION_STRING. Remplacez l’exemple ici par votre valeur de chaîne de connexion réelle.

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

    Conseil / Astuce

    La chaîne de connexion utilisée ici dépend en grande partie du type de base de données SQL à laquelle vous vous connectez. Si vous vous connectez à une base de données Azure SQL ou à une base de données SQL dans Fabric, utilisez la chaîne de connexion ODBC à partir de l’onglet chaînes de connexion. Vous devrez peut-être ajuster le type d’authentification en fonction de votre scénario. Pour plus d’informations sur les chaînes de connexion et leur syntaxe, consultez mots clés et attributs de chaîne de connexion et DSN.

  3. Créez un nouveau fichier nommé sqltest.py dans un éditeur de texte.

  4. Ajoutez le code ci-dessous.

    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)
    

Exécuter le code

  1. Depuis une invite de commandes, exécutez la commande suivante :

    python sqltest.py
    
  2. Vérifiez que les bases de données et leurs classements sont retournés, puis fermez la fenêtre Commande.

    Si vous recevez une erreur :

    • Vérifiez que le nom du serveur, le nom de la base de données, le nom d’utilisateur et le mot de passe que vous utilisez sont corrects.

    • Si vous exécutez le code à partir d’un environnement local, vérifiez que le pare-feu de la ressource Azure à laquelle vous essayez d’accéder est configuré pour autoriser l’accès à partir de l’adresse IP de votre environnement.