Im Allgemeinen ist dies keine Frage, die eine "richtige" Antwort hat. In MySQL gibt es keinen Textspeichertyp mit unendlicher Länge. Sie könnten LONGTEXT
verwenden , aber das hat immer noch eine (absurd hohe) Obergrenze. Doch wenn Sie das tun, treten Sie Ihrem DBMS in die Zähne, weil Sie sich mit diesem absurden Klecks einer Spalte für Ihren 50-Zeichen-Text auseinandersetzen müssen. Ganz zu schweigen davon, dass man damit kaum etwas anfangen kann.
Die meiste Zukunftssicherheit(TM) wird also wahrscheinlich von LONGTEXT
geboten . Aber es ist auch eine sehr schlechte Methode, um das Problem zu lösen. Ehrlich gesagt würde ich die Bewerbungsvoraussetzungen noch einmal überprüfen. Das Speichern von Zeichenfolgen, die keine "Domäne" (wie in ihrer Anwendung gut definiert) und beliebiger Länge haben, ist keine der Stärken von RDBMS.
Wenn ich dies auf der Ebene des "Anwendungsdesigns" lösen möchte, würde ich dafür sogar den NoSQL-Schlüsselwertspeicher verwenden (und ich bin so anti-NoSQL-Hype, wie es nur geht, also wissen Sie, dass es ernst ist). obwohl ich erkenne, dass es eine ziemlich teure Änderung für eine so kleine Änderung ist. Wenn dies jedoch ein Hinweis darauf ist, was Ihr DBMS letztendlich enthalten wird, ist es möglicherweise klüger, jetzt zu wechseln, um dasselbe Problem in Zukunft hundertmal zu vermeiden. Die Datendomäne ist in RDBMS sehr wichtig, während sie in nicht-relationalen Lösungen explizit an den Rand gedrängt wird, was Sie hier anscheinend zu lösen versuchen.
Stecken Sie mit MySQL fest? Erhöhen Sie ihn einfach auf VARCHAR(1000)
. Wenn Sie keine Anforderungen an Ihre Daten haben, ist es ohnehin irrelevant, was Sie tun.