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, Visual Studio Code'ta Jupyter Notebook'u kullanarak iş içgörülerini hızlıca elde edebilirsiniz.
mssql-python Python sürücüsünü kullanarak SQL veritabanınıza bağlanın, verileri okuyun ve ardından e-postalarda, raporlarda ve sunumlarda kullanılacak şekilde biçimlendirin.
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.10 veya üzeri
Python'larınız yoksa, python.orgPython çalışma zamanını ve pip paket yöneticisini yükleyin.
Kendi ortamınızı kullanmak istemiyor musunuz? Container ve yerel geliştirmeyi takip ederek tekrarlanabilir bir devcontainer veya GitHub Codespaces ortamı oluşturun.
Visual Studio Code aşağıdaki uzantılarla:
Visual Studio Code için Python uzantısı
macOS ve Linux'ta parolasız kimlik doğrulaması için Azure Command-Line Arabirimi (CLI).
henüz sahip
uvdeğilseniz yükleme yönergelerini izleyin.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
Aşağıdaki platformlardan birinde bir SQL veritabanı oluşturun veya bağlanın:
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. Eğer bir dizin yoksa, yeni bir dizin oluşturun, örneğin
pythonveyascripts. OneDrive'ınızdaki klasörlerden kaçının, çünkü senkronizasyon 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'un not defteri hücrelerini çalıştırmak için ipykernel ve not defteri hücrelerinizin içinden paketleri yönetmek için uv gerekir.
uv add mssql-python 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 hem
ActiveDirectoryInteractivehem deActiveDirectoryDefaultMicrosoft Entra kimlik doğrulaması için çalışır.ActiveDirectoryInteractivebetiği her çalıştırdığınızda oturum açmanızı ister. Tekrar tekrar giriş çağrılarını önlemek için, Azure CLI üzerinden bir kez oturum açarakaz login, çalıştırın, ardından önbelleklenmiş kimlik bilgilerini yeniden kullanan 'i kullanınActiveDirectoryDefault.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ımlar
İnşaya devam etmek için bu makaleleri kullanın:
- Farklı SQL veritabanı türleri ve kimlik doğrulama yöntemleri için bağlantıları yapılandırmak için bağlantı dizileri oluşturun.
- pandas entegrasyonu ile sorgu sonuçlarını doğrudan DataFrames'e yüklemek ve not defterlerinde analiz yapılması sağlandı.
- Yüksek performanslı analitik için Apache Arrow kullanılarak sütunlu verilerle çalışmak üzere Arrow entegrasyonu.