
Разбор · Опубликовали 08.10.2026
База данных хранит связи и правила учёта: агенты меняют структуру вместе с функцией продукта
На учебном заказе и нашем кабинете курса. Клиентского кейса изменения базы по подписке у нас нет.
Текст написан инженером, который ведёт vibecoding.ru, вместе с машиной агентов · факты проверены 8 октября 2026
Разобрать задачу своей системы поможет тест для руководителя.
База данных хранит сведения о заказах, товарах и пользователях вместе со связями между ними, а СУБД и серверная программа следят за правилами учёта.
Когда новую функцию добавляют ИИ-агенты, вместе с экраном они должны изменить структуру данных и проверить, что прежние заказы остались согласованными.
Не хотите разбираться сами? Внедряем ИИ в ваш бизнес: задачи без лимита, одна цена в месяц, отмена в любой момент.
1. База данных связывает записи в систему учёта.
Владелец покупает возможность ответить на вопрос «что мы должны покупателю?». Для этого нужны сам заказ, его состав и состояние исполнения.
Возьмём учебный интернет-магазин. Покупатель оформил заказ, затем менеджер изменил цену товара в каталоге. Сумма прежней покупки должна остаться прежней.
У каждой записи есть свой номер, а у заказа есть связи с покупателем и товарами. В заказанной CRM эти отношения тоже важнее цвета таблицы.
Переход из Excel в программу нужен, когда связанные изменения требуют общей проверки и истории операций.
Цена покупки остаётся в позиции заказа.
Учебная модель редакции на основе механизма связей из документации PostgreSQL; проверено 8 октября 2026. Это не клиентский кейс.
2. Правила учёта исполняют база и серверная программа.
Наличие базы само по себе не запрещает ошибку. Разработчик должен описать, какие записи допустимы и что система делает при конфликте.
В PostgreSQL связь можно закрепить ограничением, которое не даст сослаться на отсутствующий товар. Отдельные проверки запрещают пустые обязательные поля и повтор номера.
Создание заказа и резерв товара можно объединить в операцию внутри базы. Все её действия сохранятся вместе либо не сохранятся вовсе. Так работает транзакция.
Правило должно выдержать отказ и повтор.
Ограничения и транзакции PostgreSQL; примеры проверок редакции, 8 октября 2026.
Транзакция базы не отменяет внешний платёж или уже отправленное письмо. Для таких действий серверной программе нужны свои правила повторов и проверки результата.
3. Новая функция иногда меняет отношения между записями.
Кнопка «Отгрузить частично» меняет смысл заказа. Одного общего состояния уже недостаточно: нужно хранить состав каждой отправки.
В учебном магазине заказ остаётся тем же, но к нему добавляются отгрузки. Система считает отправленное по позициям и не разрешает выдать больше купленного.
Stripe описала такой поворот в феврале 2017 года. Несколько подписок сначала хранили списком в карточке покупателя. Когда новые функции усложнили работу с этим списком, подписки вынесли в отдельную таблицу.
Новый объект получает свои записи и связи.
Первые две строки: учебная модель. Изменение структуры в последней: Stripe, Online migrations at scale, 2 февраля 2017. Правила приёмки сформулированы редакцией. Проверено 8 октября 2026.
4. Старые записи переводят на новую структуру по правилам.
Пустая тестовая база не покажет, что будет с прежними заказами. Проверка должна включать записи старого формата, а не только покупку после обновления.
Миграцией называют подготовленное изменение структуры или перенос сохранённых данных. Это задача вместе с новой функцией, даже если пользователь не видит переноса.
Документация Prisma предлагает сначала расширить структуру и перенести данные, затем убрать старое. Stripe во время перехода сравнивала результаты чтения.
Прежний сценарий проверяют до удаления старой структуры.
Принцип expand-and-contract из документации Prisma и поэтапный переход Stripe; проверено 8 октября 2026. Это порядок работы, а не обещание любого переноса без остановки.
Нельзя восстановить даты отгрузок, которые система никогда не сохраняла. Такие пробелы согласуют с владельцем учёта; агент не заполняет их догадками.
5. Наш кабинет хранит ответ вместе с версией вопроса.
Инженер ведёт машину агентов на vibecoding.ru, включая бэкенд и базу. Это видно на публичной карте машины; сама карта не оценивает качество конкретной СУБД.
В курсе агентной разработки база входит в устройство рабочего продукта. Собственный кабинет курса показывает другую сторону задачи: ответы анкеты сохраняются в карточке ученика.
Ответ привязан к версии вопросов. Когда вопрос меняют для следующих учеников, прежний ответ сохраняет прежний смысл. Это наш продукт, клиентского сравнения «до и после» здесь нет.
Ответ сохраняет связь с тем вопросом, который видел ученик.
Собственная реализация анкет vibecoding.ru; устройство сверено по журналу проекта 8 октября 2026. Данные учеников не показаны.
Изменение поля должно пройти через все места, которые его сохраняют и читают. Наши ошибки были именно на этих связях между частями программы.
В разборе технического долга речь о накопленных проблемах кода. Здесь причина уже в новой функции: её данные должны дойти до каждого нужного экрана.
Проверка одного экрана этого не доказывает. Нужно проверить весь путь записи и чтения, включая согласованный формат ответа сервера.
31.07
Описание обложки новости терялось на части путей записи. Перенос полей свели в общий код и закрепили тестом.
24.09
Сервер вернул новое поле, которое не допускала проверка ответа. Страницы новостей без кэша отвечали ошибкой. Тест теперь сверяет ответ с его форматом.
Первичные журналы машины; обе записи перечитаны 8 октября 2026. Это ошибки передачи данных, а не случаи потери клиентской базы.
6. Изменение принимают по сценарию и сохранности учёта.
В задаче сначала фиксируют, что должно остаться верным. Для нашего заказа это прежняя цена, состав покупки и предел отправленного количества.
Эти условия входят в постановку задачи агенту. Исполнитель сдаёт изменение таблиц, серверные правила и проверку рабочего сценария одним результатом.
До выпуска согласуют способ возврата при сбое. Возврат к старому коду должен учитывать уже записанные новые данные; ответственность за ошибки разобрана отдельно.
Рабочий экран подтверждают проверкой прежних записей.
Редакционный чек приёмки учебного сценария, 8 октября 2026; механизмы и принцип переноса: PostgreSQL, Prisma и Stripe.
Покупать новую базу ради каждого поля не требуется. Сначала проверяют, решается ли задача изменением в уже выбранном стеке.
В разработке по подписке тариф «Один проект» стоит 250 000 ₽ в месяц на 8 октября 2026. Это один продукт и один поток работы.
В очередь входят изменения таблиц и серверных правил выбранного стека, которые агенты сдают вместе с работающим сценарием. Выбор новой архитектуры не входит в стандартную работу тарифа.
Начать разбор своей системы можно с теста для руководителя. Затем на обсуждение задачи стоит принести пример изменения и правило учёта, которое нельзя нарушить.
Что и как мы проверяли
| Факт | Что известно | Проверено |
|---|---|---|
| Связи и операции | Документация PostgreSQL: ограничения и транзакции. Заказ, цена покупки и частичная отгрузка в статье составляют учебную модель редакции. | 2026-10-08 |
| Перенос данных | Первичный рассказ Stripe от 2 февраля 2017 и документация Prisma. Подтверждают порядок перехода, не срок и не превосходство агентной разработки. | 2026-10-08 |
| Собственная машина | Живые /open, программа курса и первичные журналы анкет и исправлений. Свой кабинет не выдаём за клиентский кейс; данные учеников не показываем. | 2026-10-08 |
| Условия подписки | 250 000 ₽ в месяц за «Один проект». Живые /services и /open прочитаны 8 октября 2026, 00:54–01:00 МСК. Цифры скорости и стоимости работы машины не использованы. | 2026-10-08 |
7. Частые вопросы
Чем база данных отличается от СУБД?+
База содержит организованные записи. Система управления базами данных, СУБД, сохраняет их, выполняет запросы и применяет заданные ограничения.
Excel тоже можно использовать для учёта?+
Да, если таблица решает ваш рабочий сценарий. Повод пересмотреть решение появляется, когда несколько операций должны менять согласованные данные по общим правилам.
Что значит «реляционная» база данных?+
Она представляет данные таблицами и связывает записи через значения полей. Возможность закрепить связь ограничением зависит от СУБД и настроенной схемы.
Все базы хранят данные таблицами?+
Нет. Есть документные, графовые и другие модели. Для заказчика важен работающий сценарий учёта; перечень типов не заменяет его проверку.
Для каждого изменения функции нужна новая таблица?+
Нет. Иногда хватает поля или серверного правила. Отдельная таблица нужна, когда появляется отдельный объект со своей историей и связями.
Резервная копия заменяет проверку переноса?+
Нет. Копия помогает восстановить сохранённое состояние. Проверка переноса должна показать, что новый сценарий сохранил нужные данные и отношения.
Источники
- PostgreSQL: Constraints — документация
- PostgreSQL: Transactions — документация
- Stripe: Online migrations at scale, Jacqueline Xu, 2 февраля 2017 — инженерный блог
- Prisma: Expand-and-contract migrations — документация
- Yandex Cloud: Базы данных, основные типы и особенности — объяснение провайдера
- Условия подписки vibecoding.ru, проверены 8 октября 2026 — наш продукт
- Публичная карта машины; первичные истории сверены отдельно по журналам проекта — наш продукт
- Программа курса; собственный кабинет и анкеты, устройство проверено 8 октября 2026 — наш продукт
Запомнить.
- База хранит записи и связи. Назовите, какие отношения система должна сохранять после изменения.
- Новая функция меняет учёт. Принимайте её вместе со структурой данных и серверными правилами.
- Прежние записи проверяют отдельно. Попросите показать старый заказ в новом сценарии.
- Историю нельзя додумать. Согласуйте перенос пробелов и сохранение первоначальных фактов до выпуска.
- Работу подтверждает сценарий. Проверьте повтор запроса, отказ операции и продолжение переноса.
Следующий шаг: тест для руководителя и пример правила учёта из вашей системы.