Ola pessoal,
Estou tentando implementar uma rotina em que o sistema salve algumas informações em um BD, mas, caso os dados já existam (Primary Key), um update será executado no bloco (try, except). Minha duvida e justamente com o bloco try, except, pois, caso não seja um erro gerado por primary key como posso fazer para executar um Rollback, já que o sistema assumira o Except? Se alguém souber me ajudar fico grato, With DM.GravaDados do begin Try if (not DM.MDOTR.InTransaction) then DM.MDOTR.StartTransaction; Active:=False; SQL.clear; SQL.Add('Insert Into Clientes (Nome, Endereco, ... ExecSQL; Except SQL.clear; SQL.Add('Update Clientes Set Nome=:A01,Endereco=:A02... ExecSQL; DM.MDOTR.Commit; Application.MessageBox('Os dados foram gravados com sucesso.', ' A T E N Ç Ã O', 0); Christian Balz [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 <*> 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