План A: Таблица с одной строкой на логический элемент. Если в предложенном вами проекте должен был быть только один «ряд», то это просто и, вероятно, лучше всего. Если бы у вас было несколько строк (каждая с тысячами столбцов), то в таблице должно было бы быть 3 столбца: старая «строка», число (до тысяч) и TINYINT с 0 / 1.
План Б: Если вы используете MySQL 8.0, вы можете иметь один столбец BLOB
и биты установки / сброса в нем.
План C: До 8.0 такой подход был ограничен 64 логических значения за раз - либо в BIGINT
, либо в SET
. Ваши «тысячи» могут быть разбросаны по «десяткам» столбцов (или строк).