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 Database Azure SQL Managed Instance Azure 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.
Requisitos previos
Para completar este inicio rápido necesita instalar:
Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
Base de datos en la que ejecutará una consulta.
Puede utilizar uno de estos inicios rápidos para crear y configurar una base de datos:
Acción SQL Database Instancia administrada de SQL SQL Server en máquina virtual de Azure Azure Synapse Analytics Crear Portal Portal Portal Portal CLI CLI PowerShell PowerShell PowerShell PowerShell Plantilla de implementación Plantilla de implementación Plantilla de implementación Plantilla de implementación Configuración Regla de firewall de IP en el nivel de servidor Conectividad desde una máquina virtual Configuración de conectividad Conectividad desde un entorno local Conexión a una instancia de SQL Server Obtención de información sobre la conexión SQL de Azure SQL de Azure VM con SQL Synapse SQL Python 3 y software relacionado
Acción macOS Linux Windows Instalación del controlador ODBC, sqlcmd y del controlador de Python para SQL Server Configuración de un entorno para el desarrollo de Python pyodbc Configuración de un entorno para el desarrollo de Python pyodbc Configuración de un entorno para el desarrollo de Python pyodbc. Instalación de Python y otros paquetes necesarios Use sudo apt-get install python python-pip gcc g++ build-essential
.Más información Microsoft ODBC Driver en macOS Microsoft ODBC Driver en Linux Controlador ODBC de Microsoft en Windows
Para explorar más Python y la base de datos de Azure SQL Database, consulte Bibliotecas Azure SQL Database para Python, el repositorio de pyodbc y un ejemplo de pyodbc.
Creación de código para consultar la base de datos
En el editor de texto, cree un archivo llamado sqltest.py.
Agregue el código siguiente: Obtenga la información de conexión de la sección de requisitos previos y sustituya sus propios valores por <servidor>, <base de datos>, <nombre de usuario> y <contraseña>.
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()
Ejecución del código
En el símbolo del sistema, ejecute el siguiente comando:
python sqltest.py
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.
- Compruebe que el controlador ODBC instalado es la misma versión que la variable
driver
en el código anterior. Por ejemplo, el código muestra 17, pero es posible que haya instalado una versión diferente. - 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.