Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Neste guia de início rápido, você usa o Jupyter Notebook no Visual Studio Code para obter rapidamente insights de negócios. Você usa o mssql-python driver para Python para se conectar ao seu banco de dados SQL e ler os dados que são formatados para uso em e-mails, apresentações de relatórios, etc.
O mssql-python driver não requer nenhuma dependência externa em máquinas Windows. O driver instala tudo o que precisa com uma única pip instalação, permitindo que você use a versão mais recente do driver para novos scripts sem quebrar outros scripts que você não tem tempo para atualizar e testar.
Documentação
Pré-requisitos
Python 3
Se você ainda não tiver o Python, instale o gerenciador de pacotes Python runtime e Python Package Index (PyPI) a partir do python.org.
Prefere evitar usar o seu próprio ambiente? Abra como um devcontainer usando o GitHub Codespaces.
Visual Studio Code com as seguintes extensões:
Se ainda não tiver o
uv, instaleuvseguindo as instruções de https://docs.astral.sh/uv/getting-started/installation/.Um banco de dados no SQL Server, Banco de Dados SQL do Azure ou Banco de Dados SQL no Fabric com o
AdventureWorks2025esquema de exemplo e uma cadeia de conexão válida.Instale pré-requisitos que devem ser instalados uma única vez específicos do sistema operacional.
Criar um banco de dados SQL
Este quickstart requer o esquema AdventureWorks2025 Lightweight no Microsoft SQL Server, na base de dados SQL no Fabric ou na Azure SQL Database.
Crie o projeto e execute o código
- Criar um novo projeto
- Adicionar dependências
- Iniciar o Visual Studio Code
- Atualizar pyproject.toml
- Salvar a cadeia de conexão
- Criar um Jupyter Notebook
- Exibir resultados em uma tabela
- Exibir resultados em um gráfico
Criar um novo projeto
Abra um prompt de comando no diretório de desenvolvimento. Se você não tiver um, crie um novo diretório chamado
python,scripts, etc. Evite pastas no seu OneDrive, a sincronização pode interferir no gerenciamento do seu ambiente virtual.Crie um novo projeto com
uv.uv init jupyter-notebook-qs cd jupyter-notebook-qs
Adicionar dependências
No mesmo diretório, instale os pacotes mssql-python, python-dotenv, rich, pandas e matplotlib. Em seguida, adicione ipykernel e uv como dependências de desenvolvimento. O VS Code requer que ipykernel e uv sejam adicionados para poder interagir com uv a partir de dentro das células do seu bloco de notas usando comandos como !uv add mssql_python.
uv add mssql_python dotenv rich pandas matplotlib
uv add --dev ipykernel
uv add --dev uv
Abra o Visual Studio Code.
No mesmo diretório, execute o seguinte comando.
code .
Atualizar pyproject.toml
O pyproject.toml contém os metadados para o seu projeto.
Atualize a descrição para ser mais descritiva.
description = "A quick example using the mssql-python driver and Jupyter Notebooks."Salve e feche o arquivo.
Salvar a cadeia de conexão
Abra o
.gitignorearquivo e adicione uma exclusão para.envarquivos. Seu arquivo deve ser semelhante a este exemplo. Certifique-se de salvá-lo e fechá-lo quando terminar.# Python-generated files __pycache__/ *.py[oc] build/ dist/ wheels/ *.egg-info # Virtual environments .venv # Connection strings and secrets .envNo diretório atual, crie um novo arquivo chamado
.env.Dentro do
.envarquivo, adicione uma entrada para sua cadeia de conexão chamadaSQL_CONNECTION_STRING. Substitua o exemplo aqui pelo valor real da cadeia de conexão.SQL_CONNECTION_STRING="Server=<server_name>;Database={<database_name>};Encrypt=yes;TrustServerCertificate=no;Authentication=ActiveDirectoryInteractive"Sugestão
A cadeia de conexão usada aqui depende em grande parte do tipo de banco de dados SQL ao qual você está se conectando. Se você estiver se conectando a um Banco de Dados SQL do Azure ou a um banco de dados SQL na Malha, use a cadeia de conexão ODBC na guia Cadeias de conexão. Talvez seja necessário ajustar o tipo de autenticação dependendo do cenário. Para obter mais informações sobre cadeias de conexão e sua sintaxe, consulte Referência de sintaxe de cadeia de conexão.
Criar um Jupyter Notebook
Selecione Arquivo e, em seguida, Novo arquivo e Jupyter Notebook na lista. Um novo bloco de anotações é aberto.
Selecione Ficheiro, depois Guardar Como... e dê um nome ao seu novo bloco de notas.
Adicione as seguintes importações na primeira célula.
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 pltUse o botão + Markdown na parte superior do bloco de anotações para adicionar uma nova célula de marcação.
Adicione o seguinte texto à nova célula de marcação.
## Define queries for use laterSelecione a marca de seleção na barra de ferramentas da célula ou use os atalhos
Ctrl+Enterde teclado ouShift+Enterpara renderizar a célula de marcação.Use o botão + Código na parte superior do bloco de anotações para adicionar uma nova célula de código.
Adicione o seguinte código à nova célula de código.
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; """
Exibir resultados em uma tabela
Use o botão + Markdown na parte superior do bloco de anotações para adicionar uma nova célula de marcação.
Adicione o seguinte texto à nova célula de marcação.
## Print orders by customer and display in a tableSelecione a marca de seleção na barra de ferramentas da célula ou use os atalhos
Ctrl+Enterde teclado ouShift+Enterpara renderizar a célula de marcação.Use o botão + Código na parte superior do bloco de anotações para adicionar uma nova célula de código.
Adicione o seguinte código à nova célula de código.
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)Sugestão
Para usar a Autenticação do Microsoft Entra no macOS, você deve estar conectado por meio da extensão Azure Repos no Visual Studio Code ou executando
az loginpor meio da CLI (Interface de Command-Line do Azure).Use o botão Executar Tudo na parte superior do notebook para executar o notebook.
Selecione o kernel jupyter-notebook-qs quando solicitado.
Exibir resultados em um gráfico
Analise a saída da última célula. Você verá uma tabela com três colunas e cinco linhas.
Use o botão + Markdown na parte superior do bloco de anotações para adicionar uma nova célula de marcação.
Adicione o seguinte texto à nova célula de marcação.
## Display spend by category in a horizontal bar chartSelecione a marca de seleção na barra de ferramentas da célula ou use os atalhos
Ctrl+Enterde teclado ouShift+Enterpara renderizar a célula de marcação.Use o botão + Código na parte superior do bloco de anotações para adicionar uma nova célula de código.
Adicione o seguinte código à nova célula de código.
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'])Use o botão Executar célula ou
Ctrl+Alt+Enterpara executar a célula.Analise os resultados. Torne este caderno seu.
Próximo passo
Visite o mssql-python repositório GitHub do driver para obter mais exemplos, para contribuir com ideias ou relatar problemas.