Usare Python per eseguire query su un database SQL di Azure

Questa guida introduttiva illustra come usare Python per connettersi a un database SQL di Azure e usare istruzioni Transact-SQL per eseguire query sui dati.

Prerequisiti

Per completare questa esercitazione introduttiva, accertarsi di avere:

Informazioni di connessione SQL Server

Ottenere le informazioni di connessione necessarie per connettersi al database SQL di Azure. Nelle procedure successive saranno necessari il nome completo del server, il nome del database e le informazioni di accesso.

  1. Accedere al Portale di Azure.
  2. Scegliere Database SQL dal menu a sinistra, quindi fare clic sul database nella pagina Database SQL.
  3. Nella pagina Panoramica per il database, verificare il nome completo del server, come mostrato nell'immagine seguente. È possibile passare il puntatore sul nome del server per visualizzare l'opzione Fare clic per copiare.

    server-name

  4. Se si dimenticano le informazioni di accesso per il server, passare alla pagina del server del database SQL per visualizzare il nome dell'amministratore del server e, se necessario, reimpostare la password.

Inserire il codice per eseguire query sul database SQL

  1. Nell'editor di testo preferito creare un nuovo file, sqltest.py.

  2. Sostituire il contenuto con il codice seguente e aggiungere i valori appropriati per il server, il database, l'utente e la password.

import pyodbc
server = 'your_server.database.windows.net'
database = 'your_database'
username = 'your_username'
password = 'your_password'
driver= '{ODBC Driver 13 for SQL Server}'
cnxn = pyodbc.connect('DRIVER='+driver+';PORT=1433;SERVER='+server+';PORT=1443;DATABASE='+database+';UID='+username+';PWD='+ password)
cursor = cnxn.cursor()
cursor.execute("SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName FROM [SalesLT].[ProductCategory] pc JOIN [SalesLT].[Product] p ON pc.productcategoryid = p.productcategoryid")
row = cursor.fetchone()
while row:
    print (str(row[0]) + " " + str(row[1]))
    row = cursor.fetchone()

Eseguire il codice

  1. Al prompt dei comandi eseguire questi comandi:

    python sqltest.py
    
  2. Verificare che vengano restituite le prime 20 righe e quindi chiudere la finestra dell'applicazione.

Passaggi successivi