Compartir a través de


Inicio rápido: Uso de Python para consultar una base de datos de Azure SQL o Azure SQL Managed Instance

Se aplica a:Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

En este inicio rápido se utiliza Python para conectarse a Azure SQL Database, Azure SQL Managed Instance o a una base de datos de Synapse SQL y se usan instrucciones T-SQL para consultar los datos.

Documentación de mssql-python | Código fuente de mssql-python | paquete (PyPi)

Requisitos previos

Para completar este inicio rápido necesita instalar:

Configuración

Siga estos pasos para configurar el entorno de desarrollo para desarrollar una aplicación mediante el mssql-python controlador de Python.

Nota:

Este controlador usa el protocolo de flujo de datos tabular (TDS), que está habilitado de forma predeterminada en SQL Server, SQL Database en Fabric y Azure SQL Database. No se requiere ninguna configuración adicional.

Instalación del paquete mssql-python

Reciba el mssql-python paquete de PyPI.

  1. Abra una consola de comandos en un directorio vacío.

  2. Instale el paquete mssql-python.

    pip install mssql-python
    

Instalación del paquete python-dotenv

Obtenga el python-dotenv de PyPI.

  1. En el mismo directorio, instale el python-dotenv paquete.

    pip install python-dotenv
    

Compruebe los paquetes instalados

Puede usar la herramienta de línea de comandos pyPI para comprobar que los paquetes previstos están instalados.

  1. Compruebe la lista de paquetes instalados con pip list.

    pip list
    

Crear nuevos archivos

  1. En el directorio actual, cree un nuevo archivo denominado .env.

  2. En el .env archivo, agregue una entrada para la cadena de conexión denominada SQL_CONNECTION_STRING. Reemplace el ejemplo aquí por el valor real de la cadena de conexión.

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

    Sugerencia

    La cadena de conexión que se usa aquí depende en gran medida del tipo de base de datos SQL a la que se conecta. Si se conecta a una base de datos de Azure SQL o a una base de datos SQL en Fabric, use la cadena de conexión ODBC de la pestaña Cadenas de conexión. Es posible que tenga que ajustar el tipo de autenticación en función de su escenario. Para obtener más información sobre las cadenas de conexión y su sintaxis, consulte DSN y las palabras clave y atributos de cadena de conexión.

  3. En el editor de texto, cree un archivo llamado sqltest.py.

  4. Agregue el código siguiente:

    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)
    

Ejecución del código

  1. En el símbolo del sistema, ejecute el siguiente comando:

    python sqltest.py
    
  2. Compruebe que se devuelven las bases de datos y sus intercalaciones y, después, cierre la ventana de comandos.

    Si recibe un error:

    • Compruebe que el nombre del servidor, el nombre de la base de datos, el nombre de usuario y la contraseña que está usando son correctos.

    • Si ejecuta el código desde un entorno local, compruebe que el firewall del recurso de Azure al que está intentando acceder está configurado para permitir el acceso desde la dirección IP del entorno.