前提・実現したいこと
ブログアプリを作成しており、長文の記事でも問題なく投稿できるようにしたいです。
発生している問題・エラーメッセージ
記事を投稿したいのですが、データ型がstringのため文字数制限で以下のようなエラーが発生します。
ActiveRecord::ValueTooLong in VlogsController#update Mysql2::Error: Data too long for column 'content' at row 1: UPDATE `vlogs` SET `content` . .
そこで、データ型を調べたところ、string型を採用しておりました。(Vlogsテーブルのcontentカラムのデータ型です。)
記事など長い文字列になる場合は、text型を使うべきだという情報をみたため、データ型を変更しようとしたところ、ターミナル上に以下のようなエラーが発生しました。
(ちなみにリッチテキストエディタのfroalaを使っています。)
Mysql2::Error: BLOB/TEXT column 'content' used in key specification without a key length: ALTER TABLE `vlogs` CHANGE `content` `content` text DEFAULT NULL ActiveRecord::StatementInvalid: Mysql2::Error: BLOB/TEXT column 'content' used in key specification without a key length: ALTER TABLE `vlogs` CHANGE `content` `content` text DEFAULT NULL Mysql2::Error: BLOB/TEXT column 'content' used in key specification without a key length
試したこと
以下のエラーはBLOB型やTEXT型を使うときは、キーの長さを指定しなければいけないと理解し、
Mysql2::Error: BLOB/TEXT column 'content' used in key specification without a key length
以下のようなコードを叩いてみました。
(正直にこの時点で自分が何をしているのかあまりわからず進めております。。)
terminal
1create index new_index on vlog(content(2000));
そうすると、以下のようなメッセージが出てきます。
おそらく、前の手順ですでに間違っているのだろうと認識しておりますが、なかなか解決することができず、、
皆さんのお知恵を拝借させていただけますと幸いです。
ERROR 1089 (HY000): Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys
よろしくお願い申し上げます。