[firebase-br] Dúvida referente a Delete

Eduardo Bahiense eduardo em icontroller.com.br
Ter Jan 4 09:25:11 -03 2011


Bem, se você tirar o 5, 6 passa a ser 5, então,

em uma trigger afterdelete ficaria assim (pseudo código):

update tabela set codigo=codigo -1 where codigo > old.codigo;

O problema disso é a concorrência, se dois usuários excluirem registros 
ao mesmo tempo pode haver inconsistência.
Outra coisa: Esse campo não se presta à PK, ainda que hoje você só tenha 
uma tabela, pelo menos um campo dela deve garantir a unicidade de um 
registro por todo o ciclo de vida da informação.

Eduardo

Em 03/01/2011 19:56, rdaguiar escreveu:
> Olá pessoal
>
> Eu sou iniciante com programação em geral.
>
> Estou usando o Lazarus (primo do Delphi) no Linux Ubuntu e o Firebird 2.5
>
> Minha dúvida é a seguinte:
>
> No botão Deletar faço:
>
> DM1.DataSource1.DataSet.Delete;
>
> O registro corrente é deletado, até aí tudo bem. Só que, digamos que
> tenho 5 registros na tabela e deletei o registro 3, então, o registro
> seguinte (que era o registro 5) passou a ser o registro 4, mas meu ID
> continuou sendo 5. Como fazer para o ID atualizar automaticamente?
>
> Agradeço a ajuda.
>
>
> Robson
>
>
> ______________________________________________
> 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://firebase.com.br/pesquisa
>






Mais detalhes sobre a lista de discussão lista