Skip to content

SQLAlchemy: Uma Poderosa Ferramenta de Manipulação de Bancos de Dados em Python

    sqlalchemy

    O SQLAlchemy é uma ferramenta poderosa para Python que simplifica o acesso a bancos de dados, tornando-o eficiente mesmo em situações complexas de alto tráfego.

    Instalação do SQLAlchemy

    Antes de começarmos, precisamos instalar o SQLAlchemy usando o pip:

    pip install sqlalchemy

    Conceitos Básicos

    Antes de mergulharmos no código, vamos entender alguns conceitos básicos.

    Engine

    A Engine é o ponto de partida do SQLAlchemy e serve como centro de controle para o banco de dados real e sua interface Python.

    Session

    A Session armazena objetos associados a ela e é usada para fazer consultas ao banco de dados.

    ORM (Mapeamento Objeto-Relacional)

    ORM é uma técnica que facilita a conversão de dados entre diferentes sistemas usando programação orientada a objetos. SQLAlchemy possui uma camada ORM para trabalhar com bancos de dados relacionais.

    Exemplos de Código

    Conectando-se a um Banco de Dados

    Primeiro, vamos nos conectar a um banco de dados. O SQLAlchemy faz isso por meio de uma Engine, que você pode criar da seguinte maneira:

    from sqlalchemy import create_engine
    
    engine = create_engine('sqlite:///exemplo.db')

    Isso criará uma Engine que interagirá com um banco de dados SQLite chamado exemplo.db.

    Criando uma Tabela

    A seguir, criaremos uma tabela. Primeiro, precisamos importar alguns componentes adicionais:

    from sqlalchemy import Column, Integer, String
    from sqlalchemy.ext.declarative import declarative_base
    
    Base = declarative_base()
    
    class Usuario(Base):
        __tablename__ = 'usuarios'
    
        id = Column(Integer, primary_key=True)
        nome = Column(String)
        email = Column(String)

    No código acima, criamos uma classe chamada ‘Usuario’ que representa uma tabela de banco de dados, usando o sistema declarativo do SQLAlchemy para facilitar essa conexão.

    Para criar a tabela no banco de dados, usamos o método ‘create_all()’ da classe ‘Base’, fornecendo a engine como argumento.

    Base.metadata.create_all(engine)

    Inserindo Registros

    Para adicionar registros, começamos criando um objeto da classe ‘Usuario’. Depois, criamos uma nova ‘Session’, adicionamos o usuário e salvamos a sessão.

    from sqlalchemy.orm import Session
    
    # Crie uma nova sessão
    sessao = Session(engine)
    
    # Crie um novo usuário
    novo_usuario = Usuario(nome='João da Silva', email='joao@email.com')
    
    # Adicione o usuário à sessão
    sessao.add(novo_usuario)
    
    # Confirme a sessão
    sessao.commit()

    Consultando Dados

    Após inserir registros, você pode querer consultar dados no banco de dados. O SQLAlchemy fornece o método Session.query() para isso:

    # Consulte o banco de dados
    usuarios = sessao.query(Usuario).all()
    
    # Imprima todos os usuários
    for usuario in usuarios:
        print(usuario.nome, usuario.email)
    
    # João da Silva joao@email.com

    No código acima, estamos consultando o banco de dados para obter todos os usuários e, em seguida, imprimindo seus nomes e e-mails.

    Conclusão

    O SQLAlchemy é uma ferramenta robusta para bancos de dados em Python, adequada para projetos de qualquer tamanho. Este artigo introduziu apenas algumas de suas capacidades; há muito mais para descobrir, incluindo consultas avançadas, relacionamentos e transações. Continue explorando!

    Outras Referências

    Link para o SQL Alchemy: https://www.sqlalchemy.org/

    Leave a Reply

    Your email address will not be published. Required fields are marked *