Rychlý start: Použití Pythonu k dotazování databáze ve službě Azure SQL Database nebo azure SQL Managed Instance
Platí pro: Azure SQL Database Azure SQL Managed InstanceAzure Synapse Analytics
V tomto rychlém startu se pomocí Pythonu připojíte ke službě Azure SQL Database, službě Azure SQL Managed Instance nebo k dotazování dat pomocí příkazů T-SQL.
Požadavky
K dokončení tohoto rychlého startu je potřeba:
Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
Databáze, ve které spustíte dotaz.
K vytvoření a konfiguraci databáze můžete použít jeden z těchto rychlých startů:
Akce SQL Database Spravovaná instance SQL SQL Server na virtuálním počítači Azure Azure Synapse Analytics Vytvoření Azure Portal Azure Portal Azure Portal Azure Portal Rozhraní příkazového řádku Rozhraní příkazového řádku PowerShell PowerShell PowerShell PowerShell Šablona nasazení Šablona nasazení Šablona nasazení Šablona nasazení Konfigurovat Pravidlo brány firewall protokolu IP na úrovni serveru Připojení z virtuálního počítače Nastavení připojení Připojení z místního prostředí Připojení k instanci SQL Serveru Získání informací o připojení Azure SQL Azure SQL Virtuální počítač SQL Synapse SQL Python 3 a související software
Akce macOS Linux Windows Instalace ovladače ODBC, sqlcmd a ovladače Pythonu pro SQL Server Konfigurace prostředí pro vývoj pyodbc v Pythonu Konfigurace prostředí pro vývoj pyodbc v Pythonu Nakonfigurujte prostředí pro vývoj pyodbc Pythonu. Instalace Pythonu a dalších požadovaných balíčků Použijte sudo apt-get install python python-pip gcc g++ build-essential
.Další informace Ovladač Microsoft ODBC v systému macOS Ovladač Microsoft ODBC v Linuxu Ovladač Microsoft ODBC ve Windows
Pokud chcete dále prozkoumat Python a databázi ve službě Azure SQL Database, projděte si knihovny Azure SQL Database pro Python, úložiště pyodbc a ukázku pyodbc.
Vytvoření kódu pro dotazování databáze
V textovém editoru vytvořte nový soubor s názvem sqltest.py.
Přidejte následující kód. Získejte informace o připojení z části Požadavky a nahraďte vlastní hodnoty pro server, databázi, uživatelské jméno> a <heslo>. <><><
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()
Spuštění kódu
Na příkazovém řádku spusťte následující příkaz:
python sqltest.py
Ověřte, že se vrátí databáze a jejich kolace, a pak zavřete příkazové okno.
Pokud se zobrazí chyba:
- Ověřte správnost názvu serveru, názvu databáze, uživatelského jména a hesla, které používáte.
- Ověřte, že ovladač ODBC, který jste nainstalovali, je stejná verze jako
driver
proměnná v kódu výše. Například kód zobrazuje 17, ale možná jste nainstalovali jinou verzi. - Pokud kód spouštíte z místního prostředí, ověřte, že je brána firewall prostředku Azure, ke kterému se pokoušíte získat přístup, nakonfigurovaná tak, aby povolovala přístup z IP adresy vašeho prostředí.