Pessoal, estou com uma dúvida e gostaria de uma ajuda sobre a melhor saída:
Imaginem uma tabela de clientes, aonde o id deste cliente é montado da seguinte 
maneira:
código numérico de 7 dígitos aonde:
Dígitos DESCRIÇÃO
1            ultimo algarismo do ano, ex: 2011 = 1, 2012 = 2, 2001 = 1
2-6         número serial, considerando o ano, ou seja, o numero seria iniciado 
do  1 a cada ano, caso o o dig do ano repetisse, daria sequencia a numeração do 
digito.
7            calculo de digito verificador,  juntando os 6 dígitos

então se fosse cadastrar clientes só pra entender a brincadeira, digamos que em 
11 anos só tive 5 clientes (absurdo isto, mas só pra exemplificar) então o 
campo ficaria assim:

Ano: 2000
0000014 José
0000021 Luiz

ano 2005
5000013 João

ano 2006
6000012 Maria

ano 2010
0000035 Edu

Num sistema antigo, que esta formula se aplica, feito em clipper, é um campo 
que é calculado cada digito, agora, pensando em uma prática mais elegante, 
teria como fazer via mistura de gatilhos e campos seriais?
se não tivesse o primeiro digito, até entendo que usar um campo serial e um 
para guardar o DV sendo alimentado por um gatilho seria legal, mas, como temos 
o primeiro digito, tem alguma sugestão?

Eduardo Az
Dep.TI
EMBRASIS
+55(11)8125-3845 TIM
[email protected]
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a