Qual o motivo de necessitar de uma versão anterior a 2 do SQLAlchemy ???
Qual o motivo de necessitar de uma versão anterior a 2 do SQLAlchemy ???
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.
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.