Re:AUTO INCREMENT personalizado

Auto-increments e sequences têm o seguinte problema (ou solução): eles são IDs mas não têm significado nem têm o compromisso de serem contíguos ou reutilizados.

O único compromisso é que eles são seqüenciais e únicos, para poderem ser usados como “surrogate keys”.

Assim você pode até ver o caso em que você pode encontrar “buracos” - você iniciou a sua base, e a “sequence” estava em 10. Quando você reiniciou o banco, em vez de ela começar de 11, ela pode muito bem começar por 20. Isso não é um bug, e sim uma otimização do seu banco.

Se você precisa de algo com significado, use um gerador de seqüências.

Aproveitando a idéia do nosso amigo… eu gostaria de saber tb!!!

Existe algum algoritimo gerador de sequencias compilado já?

Obrigado

Bom dia galera.
Estou num impasse.

Tenho o seguinte problema:
Tenho uma tabela PROJETOS e outra COTACOES com relacionamento 1…n respectivamente.

A tabela cotações tem um campo que representa o ID do PROJETO e um campo CODIGO que representa o ID da cotacao para o referido projeto.

Existe alguma maneira de eu colocar um esquema de AUTO INCREMENT nesse campo, mas com a seguinte regra:

Todas as vezes que um novo ID de PROJETO for inserido na tabela COTACOES o primeiro CODIGO ser 1 e os próximos registros para esse ID de PROJETO ser números sucessivos?

Se existir algum modelo de se fazer isso programaticamente, tambem serve.

Até!

[quote=thingol]Auto-increments e sequences têm o seguinte problema (ou solução): eles são IDs mas não têm significado nem têm o compromisso de serem contíguos ou reutilizados.

O único compromisso é que eles são seqüenciais e únicos, para poderem ser usados como “surrogate keys”.

Assim você pode até ver o caso em que você pode encontrar “buracos” - você iniciou a sua base, e a “sequence” estava em 10. Quando você reiniciou o banco, em vez de ela começar de 11, ela pode muito bem começar por 20. Isso não é um bug, e sim uma otimização do seu banco.

Se você precisa de algo com significado, use um gerador de seqüências. [/quote]

Entendi…
esse campo CODIGO é mais para controle de cotacoes mesmo…

Existe algum algoritimo gerador de sequencias compilado já?

Ouvi dizer que o hibernate tem alguma coisa parecida acoplado…

Até!