Bom criei uma sequencia para os ID so que quando deletados os dados que usuario digitou a seguencia continua, esse exemplo é no forms com as tabelas e tudo já criado:
ID:1
Nome: Alex
Telefone: 111111
outro dado:
ID:2
Nome: Rafael
Telefone: 1112111
depois deletaram o primeiro dado o ID: 1 mais a seguencia continua no 3 e não volta para o 1 como faço isso?
vo colocar minha procedure aqui que da a sequencia para os IDs:
create or replace
FUNCTION FUNC_GERA_SEQ_PRODUTO RETURN NUMBER AS
VN_CODIGO NUMBER;
VN_AUX NUMBER;
BEGIN
LOOP
----------------------------------------------------------------------------------------------------------
---## Gerar o Sequencial Automático de Banco ## ---------------------------------------------------------
---------------------------------------------------------------------------------------------------------
BEGIN
SELECT SEQ_ID_PROD.nextval
INTO VN_CODIGO
FROM DUAL;
EXCEPTION WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20001,'Problema ao tentar gerar o código do Produto!'||CHR(10)||
'FUNC_GERA_SEQ_PRODUTO'||CHR(10)||
'Erro: '||SQLERRM
);
END;
----- ## END - Gerar o Sequencial Automático de Banco ## ------------------------------------------------
---------------------------------------------------------------------------------------------------------
---## Verificar se o código gerado já está em uso. Caso verdadeiro gerar um novo código automático ## ---
---## Repetir a Operação de validação de código gerado até encontrar um código não utilizado ## ---------
---------------------------------------------------------------------------------------------------------
BEGIN
SELECT COUNT(*)
INTO VN_AUX
FROM PRODUTO
WHERE ID_PRODUTO = VN_CODIGO;
IF VN_AUX = 0 THEN
EXIT;
END IF;
EXCEPTION WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20001,'Problema ao tentar validar o código do Produto!'||CHR(10)||
'FUNC_GERA_SEQ_PRODUTO'||CHR(10)||
'Erro: '||SQLERRM
);
END;
---## END - Verificar se o código gerado já está em uso. Caso verdadeiro gerar um novo código automático ## ---
END LOOP;
RETURN VN_CODIGO;
END FUNC_GERA_SEQ_PRODUTO;
Obrigado pelo atenção.