-3
I am doing a refactoring in a system that has several with many tables that have many columns, that is, up to 148 columns in a table, how to refactor such table?
This is the table
CREATE TABLE `periodizacao12` (
`periodizacao_id` int(50) NOT NULL,
`user_id` int(50) NOT NULL,
`weeks` int(50) NOT NULL DEFAULT '12',
`startDate` date NOT NULL,
`mesocicloNome1` varchar(100) NOT NULL,
`mesocicloNome2` varchar(100) NOT NULL,
`mesocicloNome3` varchar(100) NOT NULL,
`mesocicloNome4` varchar(100) NOT NULL,
`mesocicloNome5` varchar(100) NOT NULL,
`mesocicloNome6` varchar(100) NOT NULL,
`mesocicloNome7` varchar(100) NOT NULL,
`mesocicloNome8` varchar(100) NOT NULL,
`mesocicloNome9` varchar(100) NOT NULL,
`mesocicloNome10` varchar(100) NOT NULL,
`mesocicloNome11` varchar(100) NOT NULL,
`mesocicloNome12` varchar(100) NOT NULL,
`periodizacao_objetivo1` varchar(100) NOT NULL,
`periodizacao_objetivo1_en` varchar(255) NOT NULL,
`periodizacao_objetivo1_es` varchar(255) NOT NULL,
`periodizacao_objetivo2` varchar(100) NOT NULL,
`periodizacao_objetivo2_en` varchar(255) NOT NULL,
`periodizacao_objetivo2_es` varchar(255) NOT NULL,
`periodizacao_objetivo3` varchar(100) NOT NULL,
`periodizacao_objetivo3_en` varchar(255) NOT NULL,
`periodizacao_objetivo3_es` varchar(255) NOT NULL,
`periodizacao_objetivo4` varchar(100) NOT NULL,
`periodizacao_objetivo4_en` varchar(255) NOT NULL,
`periodizacao_objetivo4_es` varchar(255) NOT NULL,
`periodizacao_objetivo5` varchar(100) NOT NULL,
`periodizacao_objetivo5_en` varchar(255) NOT NULL,
`periodizacao_objetivo5_es` varchar(255) NOT NULL,
`periodizacao_objetivo6` varchar(100) NOT NULL,
`periodizacao_objetivo6_en` varchar(255) NOT NULL,
`periodizacao_objetivo6_es` varchar(255) NOT NULL,
`periodizacao_objetivo7` varchar(100) NOT NULL,
`periodizacao_objetivo7_en` varchar(255) NOT NULL,
`periodizacao_objetivo7_es` varchar(255) NOT NULL,
`periodizacao_objetivo8` varchar(100) NOT NULL,
`periodizacao_objetivo8_en` varchar(255) NOT NULL,
`periodizacao_objetivo8_es` varchar(255) NOT NULL,
`periodizacao_objetivo9` varchar(100) NOT NULL,
`periodizacao_objetivo9_en` varchar(255) NOT NULL,
`periodizacao_objetivo9_es` varchar(255) NOT NULL,
`periodizacao_objetivo10` varchar(100) NOT NULL,
`periodizacao_objetivo10_en` varchar(255) NOT NULL,
`periodizacao_objetivo10_es` varchar(255) NOT NULL,
`periodizacao_objetivo11` varchar(100) NOT NULL,
`periodizacao_objetivo11_en` varchar(255) NOT NULL,
`periodizacao_objetivo11_es` varchar(255) NOT NULL,
`periodizacao_objetivo12` varchar(100) NOT NULL,
`periodizacao_objetivo12_en` varchar(255) NOT NULL,
`periodizacao_objetivo1s_es` varchar(255) NOT NULL,
`periodizacao_treino1` varchar(100) NOT NULL,
`periodizacao_treino2` varchar(100) NOT NULL,
`periodizacao_treino3` varchar(100) NOT NULL,
`periodizacao_treino4` varchar(100) NOT NULL,
`periodizacao_treino5` varchar(100) NOT NULL,
`periodizacao_treino6` varchar(100) NOT NULL,
`periodizacao_treino7` varchar(100) NOT NULL,
`periodizacao_treino8` varchar(100) NOT NULL,
`periodizacao_treino9` varchar(100) NOT NULL,
`periodizacao_treino10` varchar(100) NOT NULL,
`periodizacao_treino11` varchar(100) NOT NULL,
`periodizacao_treino12` varchar(100) NOT NULL,
`listOfTreino1` varchar(100) NOT NULL,
`listOfTreino2` varchar(100) NOT NULL,
`listOfTreino3` varchar(100) NOT NULL,
`listOfTreino4` varchar(100) NOT NULL,
`listOfTreino5` varchar(100) NOT NULL,
`listOfTreino6` varchar(100) NOT NULL,
`listOfTreino7` varchar(100) NOT NULL,
`listOfTreino8` varchar(100) NOT NULL,
`listOfTreino9` varchar(100) NOT NULL,
`listOfTreino10` varchar(100) NOT NULL,
`listOfTreino11` varchar(100) NOT NULL,
`listOfTreino12` varchar(100) NOT NULL,
`listOfTreino13` varchar(100) NOT NULL,
`listOfTreino14` varchar(100) NOT NULL,
`listOfTreino15` varchar(100) NOT NULL,
`listOfTreino16` varchar(100) NOT NULL,
`listOfTreino17` varchar(100) NOT NULL,
`listOfTreino18` varchar(100) NOT NULL,
`listOfTreino19` varchar(100) NOT NULL,
`listOfTreino20` varchar(100) NOT NULL,
`listOfTreino21` varchar(100) NOT NULL,
`listOfTreino22` varchar(100) NOT NULL,
`listOfTreino23` varchar(100) NOT NULL,
`listOfTreino24` varchar(100) NOT NULL,
`listOfTreino25` varchar(100) NOT NULL,
`listOfTreino26` varchar(100) NOT NULL,
`listOfTreino27` varchar(100) NOT NULL,
`listOfTreino28` varchar(100) NOT NULL,
`listOfTreino29` varchar(100) NOT NULL,
`listOfTreino30` varchar(100) NOT NULL,
`listOfTreino31` varchar(100) NOT NULL,
`listOfTreino32` varchar(100) NOT NULL,
`listOfTreino33` varchar(100) NOT NULL,
`listOfTreino34` varchar(100) NOT NULL,
`listOfTreino35` varchar(100) NOT NULL,
`listOfTreino36` varchar(100) NOT NULL,
`listOfTreino37` varchar(100) NOT NULL,
`listOfTreino38` varchar(100) NOT NULL,
`listOfTreino39` varchar(100) NOT NULL,
`listOfTreino40` varchar(100) NOT NULL,
`listOfTreino41` varchar(100) NOT NULL,
`listOfTreino42` varchar(100) NOT NULL,
`listOfTreino43` varchar(100) NOT NULL,
`listOfTreino44` varchar(100) NOT NULL,
`listOfTreino45` varchar(100) NOT NULL,
`listOfTreino46` varchar(100) NOT NULL,
`listOfTreino47` varchar(100) NOT NULL,
`listOfTreino48` varchar(100) NOT NULL,
`listOfTreino49` varchar(100) NOT NULL,
`listOfTreino50` varchar(100) NOT NULL,
`listOfTreino51` varchar(100) NOT NULL,
`listOfTreino52` varchar(100) NOT NULL,
`listOfTreino53` varchar(100) NOT NULL,
`listOfTreino54` varchar(100) NOT NULL,
`listOfTreino55` varchar(100) NOT NULL,
`listOfTreino56` varchar(100) NOT NULL,
`listOfTreino57` varchar(100) NOT NULL,
`listOfTreino58` varchar(100) NOT NULL,
`listOfTreino59` varchar(100) NOT NULL,
`listOfTreino60` varchar(100) NOT NULL,
`listOfTreino61` varchar(100) NOT NULL,
`listOfTreino62` varchar(100) NOT NULL,
`listOfTreino63` varchar(100) NOT NULL,
`listOfTreino64` varchar(100) NOT NULL,
`listOfTreino65` varchar(100) NOT NULL,
`listOfTreino66` varchar(100) NOT NULL,
`listOfTreino67` varchar(100) NOT NULL,
`listOfTreino68` varchar(100) NOT NULL,
`listOfTreino69` varchar(100) NOT NULL,
`listOfTreino70` varchar(100) NOT NULL,
`listOfTreino71` varchar(100) NOT NULL,
`listOfTreino72` varchar(100) NOT NULL,
`listOfTreino73` varchar(100) NOT NULL,
`listOfTreino74` varchar(100) NOT NULL,
`listOfTreino75` varchar(100) NOT NULL,
`listOfTreino76` varchar(100) NOT NULL,
`listOfTreino77` varchar(100) NOT NULL,
`listOfTreino78` varchar(100) NOT NULL,
`listOfTreino79` varchar(100) NOT NULL,
`listOfTreino80` varchar(100) NOT NULL,
`listOfTreino81` varchar(100) NOT NULL,
`listOfTreino82` varchar(100) NOT NULL,
`listOfTreino83` varchar(100) NOT NULL,
`listOfTreino84` varchar(100) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
The table is for a user’s training list at a gym.
What you have in the listOfTreino fields, periodizacao_treino etc...?
– Peter
@Peter has training variations like A, B ,C ...
– Victor Gabriel
The creation or modification of a database depends a lot on what you want to do. If you want "help", you should describe what you have in the fields, why this type of data, how the fields are used etc...
– Peter