[firebase-br] RES: Criar/Consultar tabela dentro de uma transação
hpensador em gmail.com
hpensador em gmail.com
Segunda Setembro 8 11:21:30 -03 2025
Bom dia, Carlos!
Tudo bem?
Na mensagem inicial preferi não citar o cenário (Firebird 5, Delphi 12.3,
Firedac)
FDConnection.Options.AutoCommit := False;
FDQuery.Connection := FDConnection;
if not FDQuery.Connection.InTransaction then
FDQuery.Connection.StarTrasaction;
try
FDQuery.Close;
FDQuery.SQL.Text := 'Create table MINHATABELA ....';
FDQuery.ExecSQL;
FDQuery.close;
FDQuery.SQL.Text := 'Select * from MINHATABELA';
FDQuery.open;
If FDQuery.FieldByName('coluna').value = valor then -> aqui diz que a
tabela MINHATABELA não existe
begin
Executa o bloco de comandos
End;
FDQuery.Connection.Commit;
Except
On e : exception do
Begin
FDQuery.Connection.Rollback;
Raise exception.....
End;
End;
[ ]'s,
Hélio Oliveira
-----Mensagem original-----
De: lista <lista-bounces em firebase.com.br> Em nome de Carlos H. Cantu via
lista
Enviada em: segunda-feira, 8 de setembro de 2025 09:03
Para: FireBase <lista em firebase.com.br>
Cc: Carlos H. Cantu <listas em warmboot.com.br>
Assunto: Re: [firebase-br] Criar/Consultar tabela dentro de uma transação
Poste a sequencia de comandos que vc está executando...
PS: Não se deve misturar comandos de DDL e DML na mesma transação.
[]s
Carlos H. Cantu
eBook Guia de Migração para o FB 5 - www.firebase.com.br/guiafb5.php
www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
hvl> Boa noite, Colegas!
hvl>
hvl> Tenho o seguinte cenário... preciso iniciar uma transação, logo
hvl> após criar uma tabela (dentro de um método qualquer) e depois
hvl> consultar a tabela criada anteriormente. Isto tudo dentro da mesma
hvl> transação (StartTransaction/commit ou rollback).
hvl> Ao tentar fazer o descrito acima, após criar a tabela, na sequência
hvl> consultar a mesma dentro de outro método recebo uma exceção de que
hvl> a tabela não existe.
hvl>
hvl> Não sei estou equivocado, mais até onde sei eu só não poderia
hvl> consultar os dados desta tabela caso fosse em outra transação, isto
hvl> até ser feito o commit da transação anterior que desta forma
hvl> ficaria disponível para as demais transações.
hvl>
hvl> [ ]’s.
hvl> Hélio Oliveira
hvl> ______________________________________________
hvl> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
hvl> Para saber como gerenciar/excluir seu cadastro na lista, use:
hvl> http://www.firebase.com.br/fb/artigo.php?id=1107
hvl> Para consultar mensagens antigas:
hvl> http://www.firebase.com.br/pesquisa_lista.html
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas:
http://www.firebase.com.br/pesquisa_lista.html
Mais detalhes sobre a lista de discussão lista