新たにテーブルを作ったり、プライマリキー、ユニーク制約、またはインデックスを作成する際、下記のようなエラーが発生することがあります。結論として回避策から書くと、BLOB型またはTEXT型の場合は、インデックス作成時にキー長を明示してあげる必要があります。LONGTEXT型を含む)のような可変長カラムでは、その先頭から最大255文字分しかインデックスできないという制約から来ているようです。ようなカラムを使って、そちらをインデックスとして使うといった工夫が考えられます。考えてみれば当然と言える話ではあります。題目を索引することはあれど、本文を索引した書籍など見たことがないですし、そこに意味がないことは誰もが分かるでしょう。本文を索引にするとしても、冒頭の一節というのが関の山。仕様は、理に適っている気がします。インデックスであれば、TEXT型カラムにもちろん作成することができます。TEXT型カラムを主キーにしたり、インデックスを張ろうという設計が正しいかどうかを考えてみた方が良いでしょう。例外は、百人一首的に冒頭の一節から引きたいか、50音順インデックスを使うようなケースだけじゃないでしょうか。検索で、先頭数文字で引っかけたい場合。レコードを超えてこないとインデックスが効いてこなかったりするので、さらにレアケースな気がします。エラーが起きるとついつい今すぐで回避方法を探してしまいがちですが、そもそもエラーになるような設計が正しいかどうか考えるクセは付けておきたいもんです。結局、そういう考え方が未来の自分を救ったりするんだから。01:19携帯販売店のDBとかを想定して回答しますが、それは正しい設計だと思いますよ。電話番号は可変長で持つとしても数百文字の任意文字列にはならないから。何百、何千文字というテキストを想定して、そこにインデックスを作成するのは無いよねーという話。...ということを分かっていながら、敢えて質問するのはズルイっす。