2017-02-02 3 views
-3

Мне нужно 4000 столбцов в одной таблице InnoDB. InnoDB позволяет использовать 1017 столбцов. Могу ли я увеличить этот номер? Как? Я хочу сохранить 4000 раз в одной таблице. См. Таблицу timeseries table Колонка Evry сохраняет один раз. Имя столбца - это другое значение, увеличиваемое автоматически. В других таблицах указано имя таймера и дополнительные данные.Могу ли я увеличить максимальное количество столбцов в MySQL innoDB?

+3

Предлагая использовать несколько таблиц, ссылающихся на первичный идентификатор на основную таблицу, и возвращать строки с помощью JOIN –

+5

Вам действительно нужно столько столбцов? Зачем? Нельзя идти вертикально? –

+4

Можете ли вы расширить свой вопрос немного с информацией о * почему * вам нужно 4000 столбцов, чтобы избежать проблемы [XY] (http://meta.stackexchange.com/q/66377/145161)? –

ответ

0

Я не знаю, как увеличить количество столбцов в InnoDB. Как прокомментировали остальные, использование JOIN в нескольких таблицах позволит вам хранить больше данных.

0

Прямой ответ: Нет

Что делать вместо этого:

Если вы splaying массив значений по столбцам, не нужно. Сделайте еще одну таблицу с 2 частями PRIMARY KEY - ПК вашей таблицы, плюс какой элемент массива он есть.

Если у вас есть много дополнительных столбцов, сериализуйте их в строку JSON и поместите в один столбец. Сохраняйте необязательные столбцы как реальные столбцы.

Если какой-либо другой образец, пожалуйста, объясните.

Существует несколько причин наличия ограничения на количество столбцов, по одной причине это «плохой дизайн схемы».

-1

Я хочу сохранить 4000 временных рядов в одной таблице. Имена столбцов, которые генерируются с помощью первичного ключа другой таблицы с опцией Auto Increment. Вот кусочек моей таблицы временных рядов.

Смежные вопросы