一般的に言って、これは「正解」の質問ではありません。 MySQLには「無限の長さ」のテキストストレージタイプはありません。 LONGTEXT
を使用できます 、しかしそれでも(とてつもなく高い)上限があります。しかし、そうすると、50文字のテキストの列のそのばかげたブロブに対処しなければならないためにDBMSを蹴り飛ばしていることになります。言うまでもなく、ほとんど何もしません。
したがって、ほとんどのfutureproofness(TM)は、おそらくLONGTEXT
によって提供されます。 。しかし、それは問題を解決するための非常に悪い方法でもあります。正直なところ、アプリケーションの要件を再検討します。 「ドメイン」がなく(アプリケーションで明確に定義されているなど)、任意の長さの文字列を格納することは、RDBMSの長所の1つではありません。
これを「アプリケーション設計」レベルで解決したい場合は、これにNoSQL Key-Valueストアを使用します(そして、私はNoSQLに反対しているので、深刻だと思います)。私はそれがそのような小さな変更のためにかなり高価な変更であることを認識していますが。しかし、これがDBMSが最終的に何を保持するかを示している場合は、この同じ問題を将来100回回避するために、今すぐ切り替える方が賢明かもしれません。データドメインはRDBMSで非常に重要ですが、非リレーショナルソリューションでは明示的に除外されており、ここで解決しようとしているようです。
MySQLで立ち往生? VARCHAR(1000)
に増やすだけです 。データの要件がない場合は、とにかく何をするかは関係ありません。