# `src.migration_insert` Фиксация применённой миграции в журнале (пишет `--mode migrate`). | Параметр | Тип | Обяз. | Описание | |---|---|---|---| | `p_filename` | text | да | имя применённого psql-файла из `2-db\migrations\` | **Возвращает** `int` — id записи журнала. **Логика/особенности:** повтор имени — исключение `UNIQUE` (миграция считается неприменённой, если её нет в журнале; повторный вызов = ошибка процесса миграции, а не идемпотентное действие). ## Пример вызова ```sql SELECT src.migration_insert('0001_init.sql'); ``` ## Тесты | № | Тип | Условие | Ожидаемый результат | |---|---|---|---| | 1 | основной сценарий | `p_filename = 'TEST-0001.sql'` | id > 0; строка в `src.migration` с `applied_at ≈ now()` | | 2 | исключение | повтор `p_filename = 'TEST-0001.sql'` | исключение UNIQUE | | 3 | исключение | `p_filename = NULL` | исключение NOT NULL |