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(AKAvarcharsemn) 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.