I am working on a program that is going to convert 50 forms into electronic question and answer formate. For the purpose of this question, lets say itn will intern produce 500 individual values of various types (text,integer,bool). All items are related and there is only a single instance of each response.
Is it good design to make one table that has 500 columns and eventually 1000s of records or should it be split up into smaller tables that have some sort of subclasification?
I know that this might take up a bit more storage space as values might be left empty, but I am thinking that I would get better performance and prevent db trashing as it is trying to retrieve data from multiple tables.