No DBXpress, você precisa fazer da seguinte forma:
var Transaction :TTransactionDesc; begin Transaction.TransactionID := 1 // Um número único.. pode até ser gerado randomicamente Transaction.IsolationLevel := xilREADCOMMITTED; SQLConnection.StartTransaction(Transaction); try SQLConnection.Commit(Transaction); except SQLConnection.Rollback(Transaction); end; É assim e tá tranquilo... mas se você usa ClientDataSet, não será necessário esse controle... ele já faz pra você :D []'s Thiago ----- Original Message ----- From: "Walter Alves Chagas Junior" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; <delphi-br@yahoogrupos.com.br> Sent: Wednesday, January 19, 2005 10:54 AM Subject: [delphi-br] RES: [DELPHI_SOPROGRAMADORES] Dúvida de inclusão no FireBird 1.5 Se você usa o BDE, voce pode fazer um controle de transação. StartTransaction (para iniciar a transação), Commit (Para concluir a gravação de tudo) e Rollback (que corresponde a um Ctrl+Z no banco). No ADO tem isso também, mas no DBExpress eu desconheço []s Walter Alves Chagas Junior Projeto e desenvolvimento Telemont Engenharia de telecomunicações [EMAIL PROTECTED] Fone: (31) 3389-8215 Fax: (31) 3389-8200 > -----Mensagem original----- > De: Emerson Moreno [mailto:[EMAIL PROTECTED] > Enviada em: quarta-feira, 19 de janeiro de 2005 08:49 > Para: [EMAIL PROTECTED]; > [EMAIL PROTECTED]; > [EMAIL PROTECTED]; > delphi-br@yahoogrupos.com.br > Assunto: [DELPHI_SOPROGRAMADORES] Dúvida de inclusão no FireBird 1.5 > > > > Caros amigos programadores, > > Meu chefe me fez um pergunta que não soube responder, por isso recorro > aqui a esse forum que tantas me ajudou e ajudei tb. Vou explicar a > situação. > > Temos 5 tabelas onde inserimos uma depois da outra, mas a operação só > deve ser gravada realmente no banco quando gravar a ultima tabela. Ai > ele me perguntou e se no meio da gravação a luz cair a os dados foram > gravados até que ponto, pois só deve ser levado em conta que a > gravação foi realizada com sucesso se gravar a ultima. > > Disse a ele que poderia fazer esse controle via código no prórpio > sistema, mas ele não quer que seja assim ele quer que o banco controle > isso. > > Fiquei sem saber responder a ele. > > Sei que podemos fazer Stores Procedures no banco, mas não sei como > fazer isso, quem puder me ajudar eu fico muito agradecido. > > Lembrando... A gravaçãop só pode ser concretizada após inserir a > ultima tabela se a luz cai ou acontecer algo todas as tabelas > referente aquele registro que já foram gravadas tem que serem > apagadas. > > []'s > > Emerson > > > Para cancelar sua assinatura deste grupo, envie um e-mail para: > [EMAIL PROTECTED] > > > Links do Yahoo! Grupos > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html