I have designed a database for an application which contains user settings. This database will come preloaded with several system user settings. These may change from version to version. How should I deal with updating these settings?
The solutions I came up with:
- Apply a boolean 'system' field to the settings tables and replace all system settings when the version number of the database changes. (which is very annoying while designing these settings as you have to constantly wipe the database while developing)
- Don't put system settings in the database and somehow merge the system data with data from the database when querying them.
Currently I'm doing the first, but somehow the 2nd seems more appropriate. What should I do and how can I seamlessly union external data with data from a database when using the Microsoft Entity Framework?