{
    "id": "pdo176-read-only-report",
    "title": "Собрать отчёт в SQL и запретить случайную запись",
    "columns": [
        "Наблюдение",
        "Результат"
    ],
    "rows": [
        [
            "Кабель: сумма остатка",
            10
        ],
        [
            "Инструмент: сумма остатка",
            2
        ],
        [
            "UPDATE внутри READ ONLY",
            "отклонён"
        ],
        [
            "Исходный остаток первой позиции",
            4
        ]
    ],
    "checks": {
        "aggregated_in_sql": true,
        "write_rejected": true,
        "unchanged": true,
        "transaction_finished": true,
        "writable_restored": true,
        "owned_objects_removed": true
    },
    "observations": {
        "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
    },
    "runtime": {
        "php": "8.5.11",
        "extension": "8.5.11",
        "pdo": "8.5.11",
        "driver": "firebird",
        "server_version": "5.0.4",
        "client_version": "WI-V6.3.4.1812 Firebird 5.0",
        "api_version": 40,
        "database": "phpmanual176",
        "transport": "isolated_loopback_tcp"
    },
    "owned_objects": [
        {
            "type": "TABLE",
            "name": "P176_REPORT_DB59EEF73B"
        }
    ],
    "removed_objects": [
        {
            "type": "TABLE",
            "name": "P176_REPORT_DB59EEF73B"
        }
    ]
}
