Recuperar Número de Um Gerador
Olá pessoal, tudo bem? Espero que sim..
Olha, usando o Firebird, pra ter um campo ´Auto-Numeração´ é preciso de um Gerador e uma trigger né? Mas acontece o seguinte, se eu insiro um registro e ao invés de salvar eu cancelo ele, esse número gerado não é usado, mas é perdido.. tem como recuperar ele de uma forma q ele só seja usado quando um registro é salvo?
Allan Elias Ramos :wink:
Olha, usando o Firebird, pra ter um campo ´Auto-Numeração´ é preciso de um Gerador e uma trigger né? Mas acontece o seguinte, se eu insiro um registro e ao invés de salvar eu cancelo ele, esse número gerado não é usado, mas é perdido.. tem como recuperar ele de uma forma q ele só seja usado quando um registro é salvo?
Allan Elias Ramos :wink:
Aersoftware
Curtidas 0
Respostas
Beppe
09/07/2005
Geralmente é dado um incremento de 1, mas se usar um número negativo, pode voltar o generator. Entretanto, essa técnica é passível de erros sob concorrência, então não é seguro fazer. Não há outro meio de contornar.
gen_id(GENERATOR, -1)
Eu custumo fazer diferente, uso IDs temporários(negativos), na hora de commitar, um ID é gerado quando o atual for negativo.
gen_id(GENERATOR, -1)
Eu custumo fazer diferente, uso IDs temporários(negativos), na hora de commitar, um ID é gerado quando o atual for negativo.
GOSTEI 0