Путаница с типом данных varchar

0

Мой сервер имеет мою версию 5.0.91-сообщества SQL, теперь мне нужно хранить длинную строку около 500 символов больше или меньше, я думал о том, чтобы идти с текстовым типом данных, но потом кто-то сказал мне, что это замедляет работу, я хотел узнать больше о varchar, и это ограничивает.

Я привык думать, что varchar ограничен только 255 символами, но затем я читаю его где-то, он способен хранить больше, чем в более новой версии ie >= 5.0.3, так как я использую 5.0.91, что делать вы думаете, я должен использовать? если я использую его как varchar (1000), он все еще действителен?

спасибо.

Теги:
database

5 ответов

2
Лучший ответ

Документация здесь,

  • varchar имеет максимальный размер 65 535 в MySQL 5.0.3 и более поздних версиях, до 5.0.3 ограничение было 255

Обратите внимание, что эффективный размер меньше,

Эффективная максимальная длина VARCHAR в MySQL 5.0.3 и более поздних версиях при условии максимального размера строки (65 535 байт, все столбцы) и набор символов используемый.

Вы должны указать максимальный размер, например. varchar(1000). Просто указать varchar недостаточно.

  • 0
    хорошо, разве varchar не предназначен для динамического использования хранилища? если да, я могу просто определить его как VARCHAR или я должен указать, сколько символов я собираюсь использовать? как VARCHAR (1000)
2

В соответствии с документом MySQL:

ТЕКСТ отличается от VARCHAR следующими способами:

  • Для столбцов TEXT не сохраняется удаление конечного пространства, когда значения сохраняются или извлекаются. До MySQL 5.0.3 это отличается от VARCHAR, для которого конечные пробелы удаляются при сохранении значений.
  • Для индексов в столбцах TEXT вы должны указать длину префикса индекса. Для CHAR и VARCHAR длина префикса необязательна.
  • Столбцы TEXT не могут иметь значения DEFAULT.

Помимо этих различий, используя VARCHAR, например, используя TEXT, вопрос о размере не является тем, что вы должны выбрать между этими двумя, если вам действительно не нужно хранить больше символов, чем 1000.

2

От Типы CHAR и VARCHAR

Значения в столбцах VARCHAR: строки переменной длины. Длина может быть задано как значение от 0 до 65535. Эффективная максимальная длина VARCHAR подлежит максимальному размер строки (65 535 байт, что разделены между всеми столбцами) и набор символов используется.

  • 0
    Я видел это раньше и запутался, потому что там не было ясно сказано. все еще спасибо за усилия, которые я ценю. :)
0

Вы можете заверить себя очень легко. Документация Mysql открыто доступна, и она сообщает

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

Что касается проблем с производительностью, это не имеет значения. Не тип данных, а отношения данных влияют на производительность.

0

В MySQL VARCHAR принимает максимум 65535 символов.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню