2009-06-26 8 views
0

Wenn ich ein Textfeld habe, speicher ich es in der Regel als varchar. Aber dann stoße ich auf die Frage, woher ich die Grenze kenne, die ich setzen sollte? Die Schätzung, wie viel Text ein Benutzer eingibt, scheint sehr ungenau zu sein.Schätzung der Größe benötigt für Text in MySQL

Da Varchar so viel Speicherplatz wie nötig benötigt, ist es besser, das Limit auf weit größer als Sie schätzen, zu setzen?

Gibt es einen Nachteil bei der Verwendung der verschiedenen Text-Datentypen? Kann mit dem Operator "LIKE" und Wildcards gesucht werden?

Antwort

0

Ich denke, es könnte Fälle geben, in denen es besser ist, den Wert von Varchar zu verkleinern. Aber in vielen Fällen ist es in Ordnung 255 als Limit zu verwenden.

Varchar kann mit LIKE und Wildchards gesucht werden.

+0

Ich dachte mit einem Limit mehr in der Region von 1000s. Bei manchen Textfeldern geben Benutzer eine große Menge Text ein, weshalb ich das Schätzen als schwierig empfinde. –

0

Wenn der Benutzer wahrscheinlich mehr als 255 Zeichen (das übliche Limit für einen VARCHAR) eingibt, benötigen Sie TEXT, aber es kann indiziert werden. MySQL hat einen FULLTEXT-Index für TEXT-Spalten, der recht gut funktioniert, aber nicht so schnell wie eine CHAR- oder VARCHAR-Spalte wäre.

Warum versuchen Sie nicht einen Test auf Ihrem lokalen Computer mit einigen Dummy-Daten, um zu sehen, wie die Leistung verglichen wird, und wenn Sie die Abfragen, die Sie möchten, schnell genug tun?