<jupyter_start><jupyter_text>Biblioteca pyodbc1. Precisamos criar uma conexão com o banco de dados.<jupyter_code>dados_conexao = ("Driver={SQL Server};"
                "Server=SeuServidor;"
                Database=NomeBaseDeDados;")
          
Se estivéssemos usando outro sistema de banco de dados, nosso driver mudaria. Para saber em outros casos, execute:
pyodbc.drivers() -> caso não encontre seu driver ali, basta buscar no google por "driver MeuBancoDeDados for pyodbc" e baixar

- vá no terminal do anaconda e digite: pip install pyodbc<jupyter_output><empty_output><jupyter_text>import pyodbcdados_conexao = ("Driver={SQL Server};"  o driver            "Server=MAKI\MSSQLSERVER02;"  nome do seu servidor             "Database=ContosoRetailDW;")  o nome do banco de dadoscaso precisasse de login e senha:dados_conexao = ("Driver={SQL Server Native Client 11.0};"            "Server=UKXXX00123,45600;"            "Database=DB01;"            "UID=Login;"            "PWD=<PASSWORD>;")conexao = pyodbc.connect(dados_conexao)print('Conexão Bem sucedida')<jupyter_code>2. Agora, precisamos criar o que o pyodbc chama de cursor, que é basicamente quem vai executar os nossos códigos SQL<jupyter_output><empty_output><jupyter_text>cursor = conexao.cursor()<jupyter_code>3. Agora já podemos executar nossos comandos SQL.

Temos 2 opções aqui:<br>
    1. Apenas Executar comandos SQL que vão acontecer no banco
    2. Executar o comando SQL e armazenar a consulta em uma variável no Python, como um dataframe do pandas

Vamos usar a 2ª opção por ser a mais útil e melhor para o nosso objetivo, até porque normalmente não teremos acesso de edição ao banco de dados (e devemos tomar MUITO cuidado com isso).<jupyter_output><empty_output><jupyter_text>dataframe = pd.read_sql('COMANDO_SQL', conexao) -> vai executar o comando SQL, gerando uma consulta e retornando a resposta dessa consulta para o dataframePara pegar uma tabela inteira do nosso banco de dados, usaremos o comando SQL Select *:"SELECT * FROM BaseDeDados.Tabela"<jupyter_code># puxar uma consulta para o banco de dados com o pandas
import pandas as pd
produtos_df = pd.read_sql('SELECT * FROM ContosoRetailDW.dbo.DimProduct', conexao)
display(produtos_df)<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.076067615658363, 'fraction_numerical': 0.010676156583629894, 'mean_word_length': 4.539408866995074, 'pattern_counts': {'":': 0, '<': 19, '<?xml version=': 0, '>': 21, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '4', 'dir': 'jupyter-structured-clean-dedup', 'id': '548380', 'license': 'MIT', 'n_tokens_mistral': 806, 'n_tokens_neox': 773, 'n_words': 248, 'path': 'biblioteca-pyodbc.ipynb', 'repo_name': 'FernandaMakiHirose/sql-python', 'size': '2243'}