On 29-10-2014 19:36, Adriano Martins Ohana wrote:
> Pois bem, o GRails tem um recurso que basta eu montar minhas domains e
> subir a App que ele cria as tabelas do banco de dados automaticamente caso
> elas não existam.
> 
> Ao utilizar o recurso de Enum(um conjunto de constantes pre-definidas) em
> um mapeamento ORM, quando o Framework criou o meu campo, ele criou com esse
> tipo: [bytea].
> 
No mínimo alguma falta de conhecimento sobre os tipos de dados do Postgres.

> Gostaria de entender, para o Postgre, esse tipo de campo é para algum caso
> especial? Tem alguma questão em relação a performance de recuperação ou
> alteração de registros em relação ao tipo?
> 
bytea é um campo para armazenamento de cadeias de caracteres binárias
(ele lhe garante independência de codificação do conjunto de caracteres
adotado). É semelhante ao que o padrão SQL define como BLOB. O seu uso
mais frequente é para armazenamento de pequenos arquivos (até 1GB).

O Postgres possui um tipo "enum" nativo desde a versão 8.3 (a quase 7 anos).

Quanto a performance, o tipo enum é mais compacto (e performático) do
que o tipo "genérico" (bytea) utilizado pelo ORM.

> Não entendi porque ele criou do tipo Binário.
> 
Isso só perguntando para algum desenvolvedor do Framework. Mas já
adianto que foi um péssima ideia.


-- 
   Euler Taveira                   Timbira - http://www.timbira.com.br/
   PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a