ограничения длины mysql

0

Я меняю свой db так, что некоторые поля могут быть длиннее. Прямо сейчас они "varchar (255)", я могу просто увеличить это до "varchar (500)" или существуют специальные правила для этого, и я должен сделать их "текстом"?

  • 0
    спасибо за быстрые ответы!
Теги:
database
phpmyadmin

2 ответа

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

Из руководство по MySQL:

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

Итак, да, вы можете просто увеличить число столбцов до 500 символов (хотя вы должны быть уверены, что ваша прикладная логика не ожидает, что максимальная длина будет 255 символов).

Изменить: см. также примечание cballou ниже о наборах символов.

  • 0
    Стоит отметить, что максимальный размер зависит также от используемого набора символов: «Эффективное максимальное количество байтов, которое может быть сохранено в столбце VARCHAR или VARBINARY, зависит от максимального размера строки в 65 535 байтов, который является общим для всех столбцов. Для столбца VARCHAR, в котором хранятся многобайтовые символы, эффективное максимальное количество символов меньше. Например, для символов utf8 может потребоваться до трех байтов на символ, поэтому столбец VARCHAR, использующий набор символов utf8, может быть объявлен как максимум 21 844 знака. "
0

Модификация более длинного varchar будет прекрасной:

ALTER TABLE my_table MODIFY column_name VARCHAR(500);

Ещё вопросы

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