Cadastro indicando chave duplicada

Olá galera, estou com um problema que quando vou fazer um cadastro no formulário e outra pessoa faz um outro cadastro ao mesmo tempo, o programa pesquisa o id e faz o salvamento no BD, porém a pesquisa do id puxou o mesmo id para os dois usuários e nesse momento de salvar da erro de chave duplicada.

Há alguma forma de fazer com que se uma pessoa acionar o salvar, buscar no BD o id onde será salvo, e travar aquele id, e caso tenha outra pessoa salvando dados pegue o próximo id sem causar a chave duplicada?

Ola,

Utilize sequence.

Outra forma seria setar a pk como Auto incremento e inserir apenas os outros campos

Obrigado galera, campelo.m vou pesquisar sobre o sequence, fabiio2 umas das coisas que não posso usar é o auto incremento, mas mesmo assim obrigado!