快速入門:使用 Python 在 Azure SQL 資料庫或 Azure SQL 受控執行個體中查詢資料庫
適用於:Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics
在本快速入門中,您將使用 Python 連線至 Azure SQL Database、Azure SQL 受控執行個體或 Synapse SQL 資料庫,並使用 T-SQL 陳述式查詢資料。
必要條件
若要完成本快速入門,您需要:
具有有效訂用帳戶的 Azure 帳戶。 免費建立帳戶。
您將在其中執行查詢的資料庫。
您可以使用其中一個快速入門,以建立資料庫並加以設定:
動作 SQL Database SQL 受控執行個體 Azure VM 上的 SQL Server Azure Synapse Analytics 建立 入口網站 入口網站 入口網站 入口網站 CLI CLI PowerShell PowerShell PowerShell PowerShell 部署範本 部署範本 部署範本 部署範本 設定 伺服器層級 IP 防火牆規則 VM 的連線能力 連線能力設定 來自內部部署的連線 連線到 SQL Server 執行個體 取得連線資訊 Azure SQL Azure SQL SQL VM Synapse SQL Python 3 和相關軟體
動作 macOS Linux Windows 安裝 ODBC 驅動程式、sqlcmd 和 SQL Server 的 Python 驅動程式 設定 pyodbc Python 開發的環境 設定 pyodbc Python 開發的環境 設定 pyodbc Python 開發的環境。 安裝 Python 和其他必要套件 請使用 sudo apt-get install python python-pip gcc g++ build-essential
。進一步資訊 macOS 上的 Microsoft ODBC 驅動程式 Linux 上的 Microsoft ODBC 驅動程式 Windows 上的 Microsoft ODBC 驅動程式
若要進一步探索 Python 和 Azure SQL 資料庫中的資料庫,請參閱適用於 Python 的 Azure SQL 資料庫程式庫、pyodbc 存放庫,以及 pyodbc 範例。
建立查詢您資料庫的程式碼
在文字編輯器中,建立名為 sqltest.py 的新檔案。
加入下列程式碼。 從必要條件小節中取得連線資訊,並以您自己的值取代 <server>、<database>、<username> 和 <password>。
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()
執行程式碼
在命令提示字元中,執行下列命令:
python sqltest.py
確認已傳回資料庫及其定序,然後關閉命令視窗。
如果您收到錯誤:
- 確認您使用的伺服器名稱、資料庫名稱、使用者名稱和密碼正確無誤。
- 確認您安裝的 ODBC 驅動程式版本與上方程式碼中的
driver
變數相同。 例如,程式碼顯示 17,但您可能已安裝不同的版本。 - 如果您是從本機環境執行程式碼,請確認您嘗試存取的 Azure 資源,其防火牆已設定為允許從您環境的 IP 位址存取。