Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Versao do SQLAlchemy

Qual o motivo de necessitar de uma versão anterior a 2 do SQLAlchemy ???

3 respostas

Descobri o motivo no video seguinte. Os comandos DELETE, UPDATE e INSERT não funcionam na versão acima de 2. Mas qual a alternativa para esses comandos nas versões acima de 2 do SQLAlchemy??

Com certeza ha uma alternativa. Não é possivel trabalhar sem esses comandos.

solução!

Olá, Ceilton! tudo bem?

No SQLAlchemy 2.0, houve uma mudança significativa na forma de interação com o banco de dados, principalmente em relação ao estilo de execução das queries.

Por exemplo, para atualizar um registro usando SQLAlchemy 2.0, você pode fazer desta forma:

from sqlalchemy import text
from sqlalchemy.orm import Session

# Cria uma sessão
with Session(engine) as session:
    # Executar query SQL 
    session.execute(text("UPDATE clientes SET Grau_escolaridade='Ensino superior' WHERE ID_Cliente=5008808"))
    # Commit as alterações
    session.commit()
  • text: É uma função do SQLAlchemy que é usada para escrever comandos SQL diretamente em texto puro. Ela garante que o texto da consulta seja tratado de forma segura, evitando problemas como SQL Injection.
  • Session: É uma classe do SQLAlchemy que gerencia a persistência de objetos e transações de banco de dados. A sessão mantém as operações ordenadas e garante que as interações com o banco de dados sejam feitas dentro de um contexto de transação.

Dentro de um bloco with, uma sessão é criada com Session(engine), garantindo que a conexão seja corretamente fechada após as operações. A consulta SQL é executada através do método session.execute(text("...")), onde a instrução SQL atualiza o grau de escolaridade de um cliente específico. Após executar a consulta, session.commit() é chamado para salvar as alterações no banco de dados.

Espero que isso te ajude com suas atualizações de banco de dados! Qualquer dúvida, não hesite em perguntar! Bons estudos :)

Obrigado.