Собрать отчёт в SQL и запретить случайную запись

Результат настоящих запросов через PDO_FIREBIRD. Собственные учебные объекты после наблюдений удалены.

Результат выполнения
НаблюдениеРезультат
Кабель: сумма остатка10
Инструмент: сумма остатка2
UPDATE внутри READ ONLYотклонён
Исходный остаток первой позиции4
Полученные строки и наблюдения
{
    "summary": [
        {
            "category": "cable",
            "quantity": 10
        },
        {
            "category": "tools",
            "quantity": 2
        }
    ],
    "rejected_update": {
        "exception": true,
        "sqlstate": "25006",
        "driver_code": -817,
        "warning": false,
        "message_present": true
    },
    "quantity_after": 4
}

result.json содержит те же данные. Реквизиты входа сюда не записываются.