Le mar. 24 janv. 2017 à 18:00, Márcio A. Sepp
<[email protected]> a écrit :
> O problema disso é que se eu criar o campo como sendo integer,
lá
> pelas tantas corro o risco de dar violação de PK.
Boiei. Como assim?
'0012345'::integer = 12345
O que voce quer dizer e' que armazena sequencias de caracteres contendo
apenas digitos como inteiros? Se tua regra de negocio diferencia zeros
'a esquerda, pode ser problema. Mas, no caso, creio que o correto
seria dizer que e' caracter com uma restricao de integridade de
conferencia, talvez com uma expressao regular [0-9]* ou algo assim
(estou enferrujado com as expressoes regulares, e muito mais coisas
alias). Se e' que entendi direito.
> As soluções possíveis seriam criar o campo como varchar(7) ou
colocar
> um segundo campo na chave para identificar a informação.
Acho que veio algo truncado. Nao me fez sentido.
Ficou estranho, mas vc já respondeu acima. Vou dividir a
informação em 02 campos integer menores (smallint numa dessas).
Obrigado.
Dúvida resolvida.
Mas esclareca-nos, por favor.
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral