2008/10/14 Livia Santos <[EMAIL PROTECTED]>: > > Porém, ao mesmo tempo que eu preciso garantir que um campo só receberá um > determinado valor (e com isso eu posso usar ou um tipo de enumeração ou > mesmo um check constraint), eu também preciso mostrar esses valores nas > interfaces.
Entendi o problema, e confesso não haver pensado nele antes. Tanto que demorei para entender... > Usando um type, como eu poderia fazer isso? Eu consigo selecionar os valores > de um tipo enumeração em um select? Não sei... vou pesquisar. Faria sentido ser exposto no catálogo (esquema de informações), mas como é uma funcionalidade relativamente nova talvez ainda não esteja exposto lá. Se alguém na lista souber para me poupar a pesquisa, agradeço! > Pensando num dado que dificilmente muda e é pequeno, como sexo, eu até > poderia deixar estático na tela. Mas teria o problema de propagar isso em > cada tela que eu precisasse mostrar uma lista de valores de sexo para o > usuário selecionar. Isso não poderia ser um módulo qualquer — arquivo de inclusão, biblioteca de funções &c — no seu ambiente de programação? > No caso de um dado com mais registros, como estado. Estado também não muda, > mas compensaria ter um tipo para ele? Eu creio que os tipos devem ser criados sempre que possível, até para evitar erros primários como, para usar os dois exemplos, a comparação absurda entre sexo e unidade da federação. A questão no caso é se vale a pena também criar a tabela de referência; e, uma vez que se decida criar a tabela de referência, se vale a pena manter a definição de tipos, que passa a ser parcialmente redundante. > Mas o AD de onde trabalhar está questionando é a perda de performance para > join com tabelas pequenas. :( Eu diria que é irrelevante. Como dizem os luminares, otimização precoce é a raiz de toda sorte de problemas. Melhor modelar o problema de quanto afeta o desempenho, ou até testar, antes de se preocupar com o resultado. -- 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
