2010-12-14 22 views
78

Rails betiğimde bir sütun türünü metinden uzun metne değiştirmek gerekiyor, ancak bunun nasıl yapılacağı konusunda bir şey bulamıyorum.Raylar 3 Longtext ile geçiş

Bunların üzerinde koşan var mı?

Teşekkürler! o kullandığınız buysa Dennis

+1

(Raylar için en az 2, sadece türünü belirtebilirsiniz: longtext FWIW) – rogerdpack

cevap

164

text tipi, MySQL için tinytext, text, mediumtext ve longtext işler. Sadece :limit => ...

Örnek kullanılarak bağlanan üst belirtin: beklendiği gibi

change_column :articles, :body, :text, :limit => 4294967295 

limit varsayılan değeri, 65535 olduğunu.

1 to 255 bytes: TINYTEXT 
256 to 65535 bytes: TEXT 
65536 to 16777215 bytes: MEDIUMTEXT 
16777216 to 4294967295 bytes: LONGTEXT 

MySQL dokümantasyon

here bulunabilir.

+0

Sınırı bilmiyorsanız ne olur? – dennismonsewicz

+0

Kapsamlı bir liste ile güncellendi. –

+4

"4294967295" olmalı ve "4294967296" (diğer bir deyişle, "4.gigabaytlar - 1") veya "Mysql2 :: Hata: Sütun için aralık dışı görüntü genişliği ..." olmalıdır. –