I want ot create database table in which I can store application settings. Which of the two table designs is better:
- Store the settings in a column and one row for key – something like this:

- Store the settings in only two rows – something like this:

Which of the two is more appropriate for storing application settings?
Best wishes
Use the second method. Obviously it is far more scalable. You will never need to add additional columns when you need to add more options.
I would only advocate the first method if the options are very limited and fixed, and all have different data types. That’s an area where the two differ considerably – if you have a big mix of numeric and character columns, you have really no choice with the second option but to store them all as
VARCHAR. However, for a settings table that will have a very limited number of rows and won’t be subject to a lot ofINSERTandUPDATE, that probably isn’t a big issue.You would not want to use the second method for a regular table (not storing mostly static application settings) that needs to be highly accessible, or used for calculations for example, where you would constantly need to be type casting values to manipulate them.
For static data infrequently accessed or modified, the second method works well though.