Dari manual bagus :
Tiga jenis yang mereka bicarakan adalah char(n)
, varchar(n)
, dan text
. Tip pada dasarnya mengatakan bahwa:
char(n)
adalah yang paling lambat karena padding kosong dan harus memeriksa batasan panjang.varchar(n)
biasanya di tengah karena batasan panjangnya perlu diperiksa.text
(AKAvarchar
tanpan
) biasanya yang tercepat karena tidak ada biaya tambahan.
Terlepas dari padding kosong untuk char(n)
dan pemeriksaan panjang untuk char(n)
dan varchar(n)
, semuanya ditangani sama di belakang layar.
Dengan ActiveRecord, t.string
adalah varchar
dan t.text
adalah text
. Jika Anda tidak memiliki batasan panjang yang sulit pada string Anda, gunakan saja t.text
dengan PostgreSQL.