Re: [GENERAL] Ajuda com definição
От | Leonardo M. Ramé |
---|---|
Тема | Re: [GENERAL] Ajuda com definição |
Дата | |
Msg-id | 71405e2a-f03e-ddf4-9aba-dbad5ade3aec@griensu.com обсуждение исходный текст |
Ответ на | [GENERAL] Ajuda com definição (Márcio A. Sepp <marcio@zyontecnologia.com.br>) |
Список | pgsql-general |
El 24/01/17 a las 16:35, Márcio A. Sepp escribió: > Boa tarde, > > > > Tenho um caso onde o campo chave da tabela irá receber dois tipos de > informação: integer de tamanho 5 e integer de tamanho 7. > O problema disso é que se eu criar o campo como sendo integer, lá pelas > tantas corro o risco de dar violação de PK. > > As soluções possíveis seriam criar o campo como varchar(7) ou colocar um > segundo campo na chave para identificar a informação. > > A considerar: > 99,9% dos registros desta tabela são de tamanho 7. > > Dutra e demais da lista, qual a forma mais correta de modelar isso? > > > -- > Att. > Márcio A. Sepp > Maybe you can create two Numeric fields, for example: create table numbers( id serial not null, number_7 numeric(7, 0), number_5 numeric(5, 0), primary key(id) ); Then insert into numbers(number_7, number_5) values(12345678, 12345); <-- ERROR insert into numbers(number_7, number_5) values(1234567, 123456); <-- ERROR insert into numbers(number_7, number_5) values(1234567, 12345); <-- OK Regards, -- Leonardo M. Ramé Medical IT - Griensu S.A. Av. Colón 636 - Piso 8 Of. A X5000EPT -- Córdoba Tel.: +54(351)4246924 +54(351)4247788 +54(351)4247979 int. 19 Cel.: +54 9 (011) 40871877
В списке pgsql-general по дате отправления: