2008/10/15 Rafael Sousa <[EMAIL PROTECTED]>:
>
> esse exemplo tá ficando cada vez melhor.. :-)

Já que houve aplausos, dá para melhorar mais ainda — não exatamente
modelagem mas nomenclatura.

O tipo deve ter o mesmo nome que será usado no atributo... na verdade,
o nome do atributo deve ser o do tipo, a menos que o mesmo tipo seja
usado mais de uma vez na mesma relação.  Se não me falha a memória,
essa regrinha prática já consta dos primeiros artigos do Codd.  E uma
vez que o nome correto é Unidade da Federação, não Estado (o DF não é
um Estado):

CREATE TYPE uf AS ENUM('SP','MG','RJ');

CREATE TABLE uf
(
  uf uf
  CONSTRAINT uf_pk PRIMARY KEY
)

insert into uf values('SP')
OK

insert into teste values('SJ')
valor de entrada e invalido para enum uf: "SJ"

select enumlabel from pg_enum

enumlabel name
"SP"
[...]

Uma coisa que estou achando um pouco chato no ENUM é que é uma lista
de seqüências de caracteres, na verdade.  Seria legal algo assim com
maior flexibilidade dos tipos básicos usados para derivação.

-- 
skype:leandro.gfc.dutra?chat      Yahoo!: ymsgr:sendIM?lgcdutra
+55 (11) 3040 7344              gTalk: xmpp:[EMAIL PROTECTED]
+55 (11) 9406 7191        ICQ/AIM: aim:GoIM?screenname=61287803
BRAZIL GMT-3  MSN: msnim:[EMAIL PROTECTED]
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a