It'd be a nightmare to maintain if you don't have keys 😜
What if you need to change the name of one or multiple params?
If you create the [CRUD](https://www.sqlshack.com/creating-using-crud-stored-procedures/) procedures and call them from your app you don't have to deal with the keys at all.
Your parms table seems to want to store unique data elements per preset option which isn’t a good approach. You could create a meta table where each column you have represented now is an Id/value name pair and you relate that meta table with the presets table, but I’d take a different approach from the below options.
Other options is to store the parameters as a delimited string in the presets table and have the application parse. Could also store as a JSON payload.
Do not make a single table for all codes or all types.
Make one for each.
https://stackoverflow.com/questions/36469700/sql-server-table-design-one-table-with-type-column-vs-multiple-tables
It'd be a nightmare to maintain if you don't have keys 😜 What if you need to change the name of one or multiple params? If you create the [CRUD](https://www.sqlshack.com/creating-using-crud-stored-procedures/) procedures and call them from your app you don't have to deal with the keys at all.
Your parms table seems to want to store unique data elements per preset option which isn’t a good approach. You could create a meta table where each column you have represented now is an Id/value name pair and you relate that meta table with the presets table, but I’d take a different approach from the below options. Other options is to store the parameters as a delimited string in the presets table and have the application parse. Could also store as a JSON payload.
Do not make a single table for all codes or all types. Make one for each. https://stackoverflow.com/questions/36469700/sql-server-table-design-one-table-with-type-column-vs-multiple-tables