Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu hızlı başlangıçta, iş içgörülerini hızla türetmek için Visual Studio Code'daki Jupyter Notebook'u kullanacaksınız.
mssql-python bağlanmak ve ardından e-postalarda, rapor sunularında vb. kullanılmak üzere biçimlendirilmiş verileri okumak için Python sürücüsünü kullanırsınız.
Sürücü, mssql-python Windows makinelerinde dış bağımlılık gerektirmez. Sürücü, ihtiyaç duyduğu her şeyi tek pip bir yüklemeyle yükler ve yükseltmeye ve test etmeye vaktiniz olmayan diğer betikleri bozmadan yeni betikler için sürücünün en son sürümünü kullanmanıza olanak sağlar.
mssql-python belgeleri | mssql-python kaynak kodu | Paket (PyPi) | Visual Studio Code
Önkoşullar
Python 3
Eğer Python zaten yüklü değilse, python.org'dan Python çalışma zamanı ve Python Paket Dizini (PyPI) paket yöneticisini yükleyin.
Kendi ortamınızı kullanmamak mı tercih ediyorsunuz? GitHub Codespaces kullanarak devcontainer olarak açın.
Visual Studio Code aşağıdaki uzantılarla:
Visual Studio Code için Python uzantısı
Henüz
uvyoksa,uvadresindeki yönergeleri izleyerek https://docs.astral.sh/uv/getting-started/installation/ yükleyin.SQL Server, Azure SQL Veritabanı veya Fabric'teki SQL veritabanından biri üzerinde
AdventureWorks2025örnek şema ve geçerli bir bağlantı dizesi.Tek seferlik işletim sistemine özgü önkoşulları yükleyin.
SQL veritabanı oluşturma
Bu hızlı başlangıç için Microsoft SQL Server'da AdventureWorks2025 Basit şeması, Doku'daki SQL veritabanı veya Azure SQL Veritabanı gerekir.
Projeyi oluşturma ve kodu çalıştırma
- Yeni proje oluşturma
- Bağımlılık ekleme
- Visual Studio Code'ı başlatma
- pyproject.toml güncelleştirme
- Bağlantı dizesini kaydetme
- Jupyter Not Defteri oluştur
- Sonuçları tabloda görüntüleme
- Sonuçları grafikte görüntüleme
Yeni proje oluşturma
Geliştirme dizininizde bir komut istemi açın. Bir tane yoksa,
python,scriptsgibi bir adla yeni bir dizin oluşturun. OneDrive'daki klasörleri kullanmaktan kaçının, çünkü eşitleme sanal ortamınızı yönetmenize engel olabilir.-
uv init jupyter-notebook-qs cd jupyter-notebook-qs
Bağımlılık ekleme
Aynı dizinde , , mssql-python, python-dotenvrichve pandas paketlerini yükleyinmatplotlib. Ardından ipykernel ve uv öğelerini geliştirme bağımlılıkları olarak ekleyin. VS Code, ipykernel ve uv 'in eklenmesini, not defteri hücrelerinizden uv gibi komutları kullanarak !uv add mssql_python ile etkileşim kurabilmenizi sağlamak için gerektirir.
uv add mssql_python dotenv rich pandas matplotlib
uv add --dev ipykernel
uv add --dev uv
Visual Studio Code'ı başlatma
Aynı dizinde aşağıdaki komutu çalıştırın.
code .
pyproject.toml güncelle
pyproject.toml, projenizin meta verilerini içerir.
Açıklamayı daha açıklayıcı olacak şekilde güncelleştirin.
description = "A quick example using the mssql-python driver and Jupyter Notebooks."Dosyayı kaydedin ve kapatın.
Bağlantı dizesini kaydetme
.gitignoredosyasını açın ve.envdosyaları için bir dışlama ekleyin. Dosyanız bu örneğe benzer olmalıdır. İşiniz bittiğinde kaydetmeyi ve kapatmayı unutmayın.# Python-generated files __pycache__/ *.py[oc] build/ dist/ wheels/ *.egg-info # Virtual environments .venv # Connection strings and secrets .envGeçerli dizinde adlı
.envyeni bir dosya oluşturun.dosyasının içine
.envbağlantı dizeniz için adlıSQL_CONNECTION_STRINGbir girdi ekleyin. Buradaki örneği gerçek bağlantı dizesi değerinizle değiştirin.SQL_CONNECTION_STRING="Server=<server_name>;Database={<database_name>};Encrypt=yes;TrustServerCertificate=no;Authentication=ActiveDirectoryInteractive"Tavsiye
Burada kullanılan bağlantı dizesi büyük ölçüde bağlandığınız SQL veritabanının türüne bağlıdır. Eğer bir Azure SQL Veritabanına veya Fabric'teki SQL veritabanına bağlanıyorsanız, bağlantı dizeleri sekmesindeki ODBC bağlantı dizesini kullanın. Senaryonuza bağlı olarak kimlik doğrulama türünü ayarlamanız gerekebilir. Bağlantı dizeleri ve söz dizimi hakkında daha fazla bilgi için bkz. bağlantı dizesi söz dizimi başvurusu.
Jupyter Not Defteri oluşturma
Listeden Dosya'yı, ardından Yeni Dosya ve Jupyter Not Defteri'ni seçin. Yeni bir not defteri açılır.
Dosya'yı ve ardından Farklı Kaydet... öğesini seçin ve yeni not defterinize bir ad verin.
İlk hücreye aşağıdaki kütüphaneleri ekleyin.
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 pltNot defterinin üst kısmındaki + Markdown düğmesini kullanarak yeni bir markdown hücresi ekleyin.
Yeni markdown hücresine aşağıdaki metni ekleyin.
## Define queries for use laterHücredeki araç çubuğunda onay işaretini seçin veya markdown hücresini işlemek için klavye kısayollarını
Ctrl+Enterya daShift+Enterkullanın.Yeni bir kod hücresi eklemek için not defterinin üst kısmındaki + Kod düğmesini kullanın.
Yeni kod hücresine aşağıdaki kodu ekleyin.
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; """
Sonuçları tabloda görüntüleme
Not defterinin üst kısmındaki + Markdown düğmesini kullanarak yeni bir markdown hücresi ekleyin.
Yeni markdown hücresine aşağıdaki metni ekleyin.
## Print orders by customer and display in a tableHücredeki araç çubuğunda onay işaretini seçin veya markdown hücresini işlemek için klavye kısayollarını
Ctrl+Enterya daShift+Enterkullanın.Yeni bir kod hücresi eklemek için not defterinin üst kısmındaki + Kod düğmesini kullanın.
Yeni kod hücresine aşağıdaki kodu ekleyin.
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)Tavsiye
macOS'ta Microsoft Entra Kimlik Doğrulaması'nı kullanmak için Visual Studio Code'daki Azure Repos uzantısıyla veya
az loginaracılığıyla çalıştırarak oturum açmanız gerekir.Not defterini çalıştırmak için not defterinin üst kısmındaki Tümünü Çalıştır düğmesini kullanın.
İstendiğinde jupyter-notebook-qs çekirdeğini seçin.
Sonuçları grafikte görüntüleme
Son hücrenin çıkışını gözden geçirin. Üç sütunlu ve beş satırlı bir tablo görmeniz gerekir.
Not defterinin üst kısmındaki + Markdown düğmesini kullanarak yeni bir markdown hücresi ekleyin.
Yeni markdown hücresine aşağıdaki metni ekleyin.
## Display spend by category in a horizontal bar chartHücredeki araç çubuğunda onay işaretini seçin veya markdown hücresini işlemek için klavye kısayollarını
Ctrl+Enterya daShift+Enterkullanın.Yeni bir kod hücresi eklemek için not defterinin üst kısmındaki + Kod düğmesini kullanın.
Yeni kod hücresine aşağıdaki kodu ekleyin.
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'])Hücreyi Yürüt düğmesini veya
Ctrl+Alt+Enterhücreyi çalıştırmak için kullanın.Sonuçları inceleyin. Bu not defterini kendiniz yapın.
Sonraki adım
Fikirlere mssql-python katkıda bulunmak veya sorunları bildirmek için daha fazla örnek için sürücü GitHub deposunu ziyaret edin.