Как изменить таблицу в MySQL? - PullRequest
0 голосов
/ 17 января 2019

У меня проблема, пока ALTER TABLE. Причина, по которой я изменяю таблицу: «Из-за своей длины этот столбец может быть недоступен для редактирования».

enter image description here

MySQL сказал: Документация

# 1064 - у вас ошибка в синтаксисе SQL; обратитесь к руководству, соответствующему вашей версии сервера MariaDB, чтобы узнать правильный синтаксис для использования рядом с «COLUMN description (MAX_ROWS = 1000000000 AVG_ROW_LENGTH = 1000000000)» в строке 1

My Sql Query

ALTER TABLE oc_information_description COLUMN description (MAX_ROWS = 1000000000 AVG_ROW_LENGTH=1000000000)

Должно быть увеличение длины таблицы и не обрезать мои данные.

1 Ответ

0 голосов
/ 17 января 2019

Ваша корневая проблема - следующее замечание по phpMyAdmin в столбце description:

Из-за своей длины этот столбец может быть недоступен для редактирования.

В этом случае текущий тип данных TEXT имеет малый размер, поэтому нет места для добавления дополнительных данных в поле. Вы можете изменить тип данных с помощью следующего ALTER TABLE на больший (MEDIUMTEXT или LONGTEXT):

ALTER TABLE oc_information_description MODIFY description MEDIUMTEXT

Ваша вторая проблема - неправильный синтаксис sql (пытается решить первую проблему):

1064 - у вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MariaDB, на предмет правильного синтаксиса для использования рядом с «COLUMN description (MAX_ROWS = 1000000000 AVG_ROW_LENGTH = 1000000000)» в строке 1

Вы не можете указать AVG_ROW_LENGTH или MAX_ROWS для определенного столбца. Вы можете указать их только для таблицы. Вы можете изменить эти значения с помощью следующих ALTER TABLE:

ALTER TABLE oc_information_description AVG_ROW_LENGTH = 1000000000, MAX_ROWS = 1000000000

table_options означает параметры таблицы, которые можно использовать в операторе CREATE TABLE, например ENGINE, AUTO_INCREMENT, AVG_ROW_LENGTH, MAX_ROWS, ROW_FORMAT или TABLESPACE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...