Короткий ответ

Когда нужна локальная или серверная база, миграции, backup, concurrency and security. Разбираем практический порядок работ, риски, стоимость и то, как принять результат без новых проблем.

Ниже — конкретные проверки, команды, таблицы и контроль результата. Выполняйте изменения только после резервной копии, если действие затрагивает рабочую систему.

Как выбирать БД

КритерийSQLitePostgreSQLSQL Server
Один ПК/локальноотличноизбыточноизбыточно
Много пользователейограниченоотличноотлично
Сервер не нуженданетнет
Сложные права/централизацияограниченодада
Экосистема Windows/ADнейтральнодасильная интеграция
Offline appотлично локальносерверсервер

SQLite — не «плохая маленькая БД»

Для локального приложения одного пользователя SQLite часто идеальна: нет отдельного сервера и простое резервное копирование. Проблемы начинаются, когда файл БД используют как многопользовательский сервер через сетевую папку.

SQLite: включить foreign keys и WAL

SQL
PRAGMA foreign_keys = ON;
PRAGMA journal_mode = WAL;

Перед выбором

ВопросОтвет влияет на
пользователейclient/server DB
Нужен офлайнlocal DB
storage/indexes
Нужны отчёты/аналитикаSQL возможности
Есть AD/Windows infraSQL Server может быть удобнее

Как проверить результат

После изменений повторите исходный сценарий, зафиксируйте результат и убедитесь, что соседние функции работают так же, как до правки. Если проблема проявляется не всегда, проведите несколько повторов в одинаковых условиях и сохраните диагностические данные.

Связанные материалы