Я в настоящее время разрабатываю приложение, которое будет хранить данные в базе данных SQLite. База данных будет намного более читать - чем доступ для записи (на самом деле, это будет заполнено данными однажды, и затем почти только чтение произойдет). Производительность чтения поэтому очень mre важна. Схема, которую я в настоящее время разрабатываю, очень вероятно, изменится в будущем с дополнительными столбцами и добавляемыми таблицами. У меня нет особого опыта с базами данных в целом. Мой вопрос, конкретно в SQLite, там какие-либо ловушки, которые рассмотрят при изменении схемы? Есть ли какие-либо шаблоны или лучшие практики, чтобы запланировать заранее для таких случаев?
Вот несколько предложений:
select * from ...
, потому что значение *
изменяется при изменении схемы; явным образом назовите столбцы, которые использует ваш запрос ALTER TABLE ADD COLUMN ...
Изучите дизайн витрин данных и звездообразной схемы. Это может быть излишним для вашей ситуации, но, по крайней мере, не позволит вам создавать произвольный дизайн.