Potrzebuję zmienić typ kolumny z tekstu na długi tekst w moim skrypcie Rails, ale nie mogę znaleźć nic o tym, jak to zrobić.
Czy ktoś to spotkał?
Dzięki! Dennis
ruby-on-rails
migration
ruby-on-rails-3
dennismonsewicz
źródło
źródło
Odpowiedzi:
Te
text
uchwyty typutinytext
,text
,mediumtext
, ilongtext
dla MySQL, jeśli to, co używasz. Po prostu określ górną granicę za pomocą:limit => ...
Przykład:
change_column :articles, :body, :text, :limit => 4294967295
Zgodnie z oczekiwaniami, domyślna wartość
limit
to 65535.1 to 255 bytes: TINYTEXT 256 to 65535 bytes: TEXT 65536 to 16777215 bytes: MEDIUMTEXT 16777216 to 4294967295 bytes: LONGTEXT
Dokumentację MySQL można znaleźć tutaj .
źródło
4.gigabytes - 1
), W przeciwnym razieMysql2::Error: Display width out of range for column ....
zostanie podniesiony.16.megabytes - 1
, ale nadal otrzymałem długi tekst, a nie średni tekst. Każdy pomysł, dlaczego? Dzięki.