# БД MT.Сhecks ## Общая информация | Параметр | Значение | |---|---| | СУБД | PostgreSQL (PL/pgSQL) | | Схемы-слои | `chk` — проверки организаций | | Источник требований | `DB/task.md` | | Инициализация | `chk/init/init.sql` (psql, идемпотентно) | ## Конвенции - Имя таблицы: `{слой}_{сущность}` (`chk.chk_check`); функции: `{слой}.{сущность}_{действие}` (db-func-3). - Один файл — одна таблица (`chk/tables/*.sql`, по образцу db-func-4). - PK сущности — `serial` (d-db-3); справочники — фиксированные `id`. - JSON-параметры: в таблице — `jsonb`; в функции передаются как `text` с кастом внутри (db-m-5). - Документация слоя: `chk/tables.md` (d-db-2), `chk/functions.md` (d-db-7), ER-схема: `chk/schema.puml` (PlantUML, c-skl-8). ## Перечень таблиц | Таблица | Тип | Описание | |---|---|---| | `chk.chk_type` | системный справочник | типы проверок (6 значений) | | `chk.chk_status` | системный справочник | статусы проверок (4 значения) | | `chk.chk_check` | сущность | проверки организаций | ## План миграции 1. `psql -d <база> -f chk/init/init.sql` — создание схемы, таблиц, сидирование справочников. 2. `psql -d <база> -f chk/functions/chk_*.sql` — создание функций слоя (спецификации: `chk/func_specs/`). 3. `psql -d <тестовая база> -f chk/tests/test_*.psql` — тесты функций (db-tst, каждая — одна транзакция с откатом).