PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

string vs texto usando Rails 3.2.* e Postgres - devo sempre usar apenas texto


Do manual fino :

Os três tipos de que eles estão falando são char(n) , varchar(n) e text . A dica é basicamente dizer que:
  • char(n) é o mais lento devido ao preenchimento em branco e à necessidade de verificar a restrição de comprimento.
  • varchar(n) geralmente está no meio porque a restrição de comprimento precisa ser verificada.
  • text (AKA varchar sem n ) geralmente é o mais rápido porque não há sobrecarga extra.

Além do preenchimento em branco para char(n) e verificação de comprimento para char(n) e varchar(n) , todos são tratados da mesma forma nos bastidores.

Com ActiveRecord, t.string é um varchar e t.text é text . Se você não tiver nenhuma restrição de comprimento rígido em suas strings, basta usar t.text com PostgreSQL.