1
resposta

[Projeto] Resolução_Desafio_final

#Criando um Banco de Dados Local

#Importando as Bibliotecas
import pandas as pd
import sqlalchemy
from sqlalchemy import create_engine, MetaData, Table, inspect,text
engine = create_engine('sqlite:///:memory:')

#caminho do Arquivo
caminho = 'https://raw.githubusercontent.com/alura-cursos/Pandas/main/clientes_banco.csv'

#importando e lendo o arquivo em uma variavel e verificando as 5 primeiras linhas
clientes = pd.read_csv(caminho)
clientes.head()

# Transformando o arquivo em um banco local
clientes.to_sql('tabela_clientes', engine, index=False)
inspector = inspect(engine)

#visualizando o nome do arquivo criado
print(inspector.get_table_names())

# Deletando Cliente inexistente 
query1 = text('DELETE FROM tabela_clientes WHERE ID_Cliente = 5008809')
with engine.connect() as conn:
    conn.execute(query1)
    conn.commit() # 3. Salvando as alterações no banco de dados!
    
#atualizando cliente

query2 = text('UPDATE tabela_clientes SET Rendimento_anual = 300000 WHERE ID_Cliente = 6840104')
with engine.connect() as conn:
    conn.execute(query2)
    conn.commit() # 3. Salvando as alterações no banco de dados!
    
    #inserindo novo registro

query3 = text('INSERT INTO tabela_clientes("ID_Cliente", "Idade", "Grau_escolaridade", "Estado_civil", "Tamanho_familia", "Categoria_de_renda", "Ocupacao", "Anos_empregado", "Rendimento_anual", "Tem_carro", "Moradia") VALUES (6850985, 33, "Doutorado", "Solteiro", 1, "Empregado", "TI", 2, 290000, 0 , "Casa/apartamento próprio")')
with engine.connect() as conn:
    conn.execute(query3)
    conn.commit() # 3. Salvando as alterações no banco de dados!
    
#visualizando tabela 
pd.read_sql_table('tabela_clientes', con=engine)
    
    
1 resposta

Oi, Bruno! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Achei interessante como você estruturou todo o processo desde a leitura do arquivo com pd.read_csv() até a criação do banco de dados em memória. Continue assim!

Uma dica interessante para o futuro é utilizar o método pd.read_sql_query() quando quiser consultar dados específicos com SQL diretamente no Pandas. Veja este exemplo:


import pandas as pd

consulta = "SELECT ID_Cliente, Idade FROM tabela_clientes WHERE Idade > 30"

resultado = pd.read_sql_query(consulta, engine)

print(resultado)

Esse codigo executa uma consulta SQL dentro do banco e retorna o resultado diretamente como um DataFrame, facilitando a analise e manipulacao dos dados dentro do Python.

Qualquer dúvida que surgir, compartilhe no fórum. Abraços e bons estudos!

Para saber mais:

Sugestão de conteúdo:

Alura

Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!