Как resize столбца в таблице mysql?

Я создал таблицу и случайно поставил длину varchar как 300 вместо 65353 . Как я могу это исправить?

Примером может служить оценка.

Вы пробовали это?

 ALTER TABLE  MODIFY  VARCHAR(65353); 

Это изменит VARCHAR(65353) на VARCHAR(65353)

 ALTER TABLE  CHANGE COLUMN   VARCHAR(65536); 

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

Обратите внимание, что после внесения этого изменения тип данных столбца будет MEDIUMTEXT .


Miky D правильный, команда MODIFY может сделать это более сжато.


MEDIUMTEXT значение MEDIUMTEXT : строка MySQL может быть всего 65535 байт (не считая столбцов BLOB / TEXT). Если вы попытаетесь изменить слишком большой столбец, делая общий размер строки 65536 или выше, вы можете получить сообщение об ошибке. Если вы попытаетесь объявить столбец VARCHAR(65536) то он слишком велик, даже если он является единственным столбцом в этой таблице, поэтому MySQL автоматически преобразует его в MEDIUMTEXT данных MEDIUMTEXT .

 mysql> create table foo (str varchar(300)); mysql> alter table foo modify str varchar(65536); mysql> show create table foo; CREATE TABLE `foo` ( `str` mediumtext ) ENGINE=MyISAM DEFAULT CHARSET=latin1 1 row in set (0.00 sec) 

Я неправильно VARCHAR(65353) ваш первоначальный вопрос, вы хотите, чтобы VARCHAR(65353) , который может выполнять MySQL, до тех пор, пока размер столбца, суммированный с другими столбцами в таблице, не превышает 65535.

 mysql> create table foo (str1 varchar(300), str2 varchar(300)); mysql> alter table foo modify str2 varchar(65353); ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs 
  • MySQL объединяется с предложением where
  • В SQL, нормально ли для двух таблиц ссылаться друг на друга?
  • Запуск MySQLDump без таблиц блокировки
  • Проблемы с contenttypes при загрузке прибора в Django
  • Mysqldump в формате CSV
  • Самый быстрый способ найти расстояние между двумя лат / длинными точками
  • MySQL Workbench не присутствует в MySQL Community RPM для Fedora 21
  • Не удается подключиться к серверу MySQL на «localhost» (10061)
  • Как вставить символ utf-8 mb4 (emoji в ios5) в mysql?
  • XAMPP - неожиданное завершение работы MySQL
  • Вставка данных в таблицу с результатом другого запроса выбора
  • Давайте будем гением компьютера.