(mySQL/scip) Как избежать создания новых столбцов в базе данных, когда у переменных есть индексы
Некоторая справочная информация:
Мы используем линейное программирование (scip/ZIMPL) для решения задачи оптимизации
В результате переменные имеют индексы в математической формулировке
В настоящее время используется MySQL/HeidiSQL для базы данных / интерфейса
В настоящее время мы берем переменные (ограничения) и помещаем их в индексы, которые являются отдельными столбцами в таблице.
т. е. переменная "v" - это index01, который относится к периодам времени, index02 относится к центральным запасам
Однако в настоящее время создается только 6 индексов / столбцов - хотя нет переменных с 6 индексами (индексами), некоторые имеют строки с более чем 6 индексами.
Да, мы могли бы сделать быстрое исправление и удвоить количество индексов, но это не долгосрочное решение
Как мы можем отобразить нижние индексы, выведенные zimpl/scip обратно к оригинальным значимым именам переменных, не создавая новый столбец для каждой переменной?
1 ответ
Используйте таблицу с отдельными столбцами для переменной и индекса.
CREATE TABLE arrays (
variable VARCHAR(10),
index SMALLINT,
value FLOAT,
PRIMARY KEY (variable, index));