Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ebben a rövid útmutatóban a Jupyter Notebookot használja a Visual Studio Code-ban az üzleti megállapítások gyors kinyeréséhez. A mssql-python Python illesztőprogram használatával csatlakozik az SQL-adatbázishoz, és beolvassa az adatokat, amelyeket aztán e-mailekhez, jelentésekhez, prezentációkhoz stb. formáznak.
Az mssql-python illesztőprogram nem igényel külső függőségeket a Windows rendszerű gépeken. Az illesztőprogram egyetlen pip telepítéssel mindent telepít, amire szüksége van, így az illesztőprogram legújabb verzióját használhatja az új szkriptekhez anélkül, hogy megszegi azokat a szkripteket, amelyek frissítésére és tesztelésére nincs ideje.
az mssql-python dokumentációja | mssql-python forráskód | Csomag (PyPi) | Visual Studio Code
Előfeltételek
Python 3
Ha még nem rendelkezik Pythonnal, telepítse a Python futtatókörnyezetet és a Python-csomagindexet (PyPI) csomagkezelőtpython.org.
Inkább lemondana a saját környezetének használatáról? Nyissa meg devcontainerként a GitHub Codespaces használatával.
Visual Studio Code a következő bővítményekkel:
Python-bővítmény a Visual Studio Code-hoz
Ha még nem rendelkezik
uv-vel, telepítse auv-t az utasítások követésével https://docs.astral.sh/uv/getting-started/installation/ forrásból.Sql Serveren, Azure SQL Database-en vagy SQL Database-adatbázison a Fabricben a
AdventureWorks2025mintasémával és egy érvényes kapcsolati sztringgel.Egyszeri operációs rendszerspecifikus előfeltételek telepítése.
SQL-adatbázis létrehozása
Ehhez a gyorsindítási útmutatóhoz az AdventureWorks2025 Lightweight sémára van szükség a Microsoft SQL Serveren, a Fabric SQL-adatbázisban vagy az Azure SQL Database-ben.
A projekt létrehozása és a kód futtatása
- Új projekt létrehozása
- Függőségek hozzáadása
- A Visual Studio Code indítása
- Pyproject.toml frissítése
- A kapcsolati sztring mentése
- Jupyter-jegyzetfüzet létrehozása
- Eredmények megjelenítése táblázatban
- Eredmények megjelenítése diagramon
Új projekt létrehozása
Nyisson meg egy parancssort a fejlesztői címtárban. Ha nem rendelkezik ilyennel, hozzon létre egy új , stb. nevű
pythonscriptskönyvtárat. Kerülje a mappákat a OneDrive-on, a szinkronizálás megzavarhatja a virtuális környezet kezelését.Hozzon létre egy új projektet a
uvsegítségével.uv init jupyter-notebook-qs cd jupyter-notebook-qs
Függőségek hozzáadása
Ugyanabban a könyvtárban telepítse a mssql-python, python-dotenv, rich, pandasés matplotlib csomagokat. Ezután add hozzá a ipykernel és uv mint fejlesztési függőségek. A VS Code megköveteli, hogy ipykernel és uv hozzá legyenek adva, hogy a jegyzetfüzet celláin belülről komunikálni lehessen a uv-vel az olyan parancsok, mint a !uv add mssql_python segítségével.
uv add mssql_python dotenv rich pandas matplotlib
uv add --dev ipykernel
uv add --dev uv
Indítsa el a Visual Studio Code-ot
Ugyanabban a könyvtárban futtassa a következő parancsot.
code .
Pyproject.toml frissítése
A pyproject.toml a projekt metaadatait tartalmazza.
Módosítsa a leírást részletesebbre.
description = "A quick example using the mssql-python driver and Jupyter Notebooks."Mentse és zárja be a fájlt.
A kapcsolati sztring mentése
Nyissa meg a
.gitignorefájlt, és adjon hozzá kizárást a fájlokhoz.env. A fájlnak hasonlónak kell lennie ehhez a példához. Mindenképpen mentse és zárja be, ha elkészült.# Python-generated files __pycache__/ *.py[oc] build/ dist/ wheels/ *.egg-info # Virtual environments .venv # Connection strings and secrets .envAz aktuális könyvtárban hozzon létre egy új fájlt.
.envA
.envfájlban adjon hozzá egy bejegyzést a kapcsolati karakterlánchoz, a következő névvel:SQL_CONNECTION_STRING. Cserélje le az itt látható példát a tényleges kapcsolati karakterláncértékre.SQL_CONNECTION_STRING="Server=<server_name>;Database={<database_name>};Encrypt=yes;TrustServerCertificate=no;Authentication=ActiveDirectoryInteractive"Jótanács
Az itt használt kapcsolati sztring nagyban függ attól, hogy milyen TÍPUSÚ SQL-adatbázishoz csatlakozik. Ha Azure SQL Database-hez vagy SQL-adatbázishoz csatlakozik a Fabricben, használja az ODBC kapcsolati sztringet a kapcsolati sztringek lapról. Előfordulhat, hogy a forgatókönyvtől függően módosítania kell a hitelesítési típust. A kapcsolati sztringekről és azok szintaxisáról további információt a kapcsolati sztring szintaxisának hivatkozásában talál.
Jupyter-jegyzetfüzet létrehozása
Válassza a Fájl, majd az Új fájl és a Jupyter Notebook lehetőséget a listából. Megnyílik egy új jegyzetfüzet.
Válassza a Fájl, majd a Mentés másként... lehetőséget, és adjon nevet az új jegyzetfüzetnek.
Adja hozzá az alábbi importálásokat az első cellához.
from os import getenv from mssql_python import connect from dotenv import load_dotenv from rich.console import Console from rich.table import Table import pandas as pd import matplotlib.pyplot as pltÚj Markdown-cella hozzáadásához használja a jegyzetfüzet tetején található + Markdown gombot.
Adja hozzá a következő szöveget az új Markdown-cellához.
## Define queries for use laterVálassza ki a pipát a cella eszköztárán, vagy használja a billentyűparancsokat
Ctrl+EntervagyShift+Entera markdown cella rendereléséhez.Új kódcella hozzáadásához használja a jegyzetfüzet tetején található + Kód gombot.
Adja hozzá a következő kódot az új kódcellához.
SQL_QUERY_ORDERS_BY_CUSTOMER = """ SELECT TOP 5 c.CustomerID, c.CompanyName, COUNT(soh.SalesOrderID) AS OrderCount FROM SalesLT.Customer AS c LEFT OUTER JOIN SalesLT.SalesOrderHeader AS soh ON c.CustomerID = soh.CustomerID GROUP BY c.CustomerID, c.CompanyName ORDER BY OrderCount DESC; """ SQL_QUERY_SPEND_BY_CATEGORY = """ select top 10 pc.Name as ProductCategory, SUM(sod.OrderQty * sod.UnitPrice) as Spend from SalesLT.SalesOrderDetail sod inner join SalesLt.SalesOrderHeader soh on sod.salesorderid = soh.salesorderid inner join SalesLt.Product p on sod.productid = p.productid inner join SalesLT.ProductCategory pc on p.ProductCategoryID = pc.ProductCategoryID GROUP BY pc.Name ORDER BY Spend; """
Eredmények megjelenítése táblázatban
Új Markdown-cella hozzáadásához használja a jegyzetfüzet tetején található + Markdown gombot.
Adja hozzá a következő szöveget az új Markdown-cellához.
## Print orders by customer and display in a tableVálassza ki a pipát a cella eszköztárán, vagy használja a billentyűparancsokat
Ctrl+EntervagyShift+Entera markdown cella rendereléséhez.Új kódcella hozzáadásához használja a jegyzetfüzet tetején található + Kód gombot.
Adja hozzá a következő kódot az új kódcellához.
load_dotenv() with connect(getenv("SQL_CONNECTION_STRING")) as conn: # type: ignore with conn.cursor() as cursor: cursor.execute(SQL_QUERY_ORDERS_BY_CUSTOMER) if cursor: table = Table(title="Orders by Customer") # https://rich.readthedocs.io/en/stable/appendix/colors.html table.add_column("Customer ID", style="bright_blue", justify="center") table.add_column("Company Name", style="bright_white", justify="left") table.add_column("Order Count", style="bold green", justify="right") records = cursor.fetchall() for r in records: table.add_row(f"{r.CustomerID}", f"{r.CompanyName}", f"{r.OrderCount}") Console().print(table)Jótanács
A Microsoft Entra-hitelesítés macOS rendszerben való használatához be kell jelentkeznie a Visual Studio Code Azure Repos bővítményével vagy
az loginaz Azure Command-Line Interface (CLI) használatával.A jegyzetfüzet futtatásához használja a jegyzetfüzet tetején található Összes futtatása gombot.
Amikor a rendszer kéri, válassza ki a jupyter-notebook-qs kernelt.
Eredmények megjelenítése diagramon
Tekintse át az utolsó cella kimenetét. Látnia kell egy három oszlopból és öt sorból álló táblázatot.
Új Markdown-cella hozzáadásához használja a jegyzetfüzet tetején található + Markdown gombot.
Adja hozzá a következő szöveget az új Markdown-cellához.
## Display spend by category in a horizontal bar chartVálassza ki a pipát a cella eszköztárán, vagy használja a billentyűparancsokat
Ctrl+EntervagyShift+Entera markdown cella rendereléséhez.Új kódcella hozzáadásához használja a jegyzetfüzet tetején található + Kód gombot.
Adja hozzá a következő kódot az új kódcellához.
with connect(getenv("SQL_CONNECTION_STRING")) as conn: # type: ignore data = pd.read_sql_query(SQL_QUERY_SPEND_BY_CATEGORY, conn) # Set the style - use print(plt.style.available) to see all options plt.style.use('seaborn-v0_8-notebook') plt.barh(data['ProductCategory'], data['Spend'])Használja a Cella végrehajtása gombot, vagy
Ctrl+Alt+Enterfuttassa a cellát.Tekintse át az eredményeket. Készítse el ezt a jegyzetfüzetet a sajátjaként.
Következő lépés
Látogasson el az mssql-python illesztőprogram GitHub-adattárába további példákért, ötletek megosztásához, vagy problémák jelentéséhez.