Какой тип данных MySQL более экономичен для масштабируемых приложений? ТЕКСТ или ВАРЧАР? - PullRequest
0 голосов
/ 19 января 2010

Я создаю хорошо масштабируемое приложение, и мне нужно знать, какой тип данных использовать для небольших строк (50-1000 символов).Я слышал, что VARCHAR имеет фиксированный размер и, следовательно, может быть быстрее, но с TEXT символы могут храниться в отдельном CLOB и только указатель в данных строки.Это будет меньше, но будет ли это значительным ударом по производительности?

1 Ответ

4 голосов
/ 19 января 2010

Значения в столбцах VARCHAR являются строками переменной длины. Длина может быть указана как значение от 0 до 255 до MySQL 5.0.3 и от 0 до 65 535 в 5.0.3 и более поздних версиях.

Если у вас MySQL 5.0.3 или более поздней версии, и вам не нужно более 65 тыс. Символов, то не имеет значения, какой вы используете, потому что и TEXT, и VARCHAR имеют переменный размер в хранилище. Если у вас много текстов длиной менее 255 символов, вы можете сохранить один байт для них, выбрав VARCHAR.

Но в совершенно ином аспекте я бы всегда выбирал тип данных, который ему больше подходит. Если вы храните текст, то есть семантически текст, который может легко превышать «стандартные» размеры, вам следует использовать тип данных TEXT.

...