38002 — modifying_sql_data_not_permitted
PostgreSQL SQLSTATE 38002 的源码与诊断参考。
38002
速览
SQLSTATE 38002 是外部例程异常类别中“不允许修改 SQL 数据”的成员。锁定的 PostgreSQL 18.6 core/contrib 扫描没有找到原生报告调用组,不能把它与 2F002 混同。
| 字段 | 值 |
|---|---|
| SQLSTATE | 38002 |
| 条件名 | modifying_sql_data_not_permitted |
| 状态 | 有效 |
| 已知存在于 | 7.4 |
| 锁定快照 | 9.0.23, 9.1.24, 9.2.24, 9.3.25, 9.4.26, 9.5.25, 9.6.24, 10.23, 11.22, 12.22, 13.23, 14.24, 15.19, 16.15, 17.11, 18.6, 19beta3 |
| 宏 | ERRCODE_E_R_E_MODIFYING_SQL_DATA_NOT_PERMITTED |
| 别名 | — |
含义
区分依据是 SQLSTATE 和例程标准类别,而不是猜测 PostgreSQL 函数 volatility 规则。保留例程属于外部、远端还是客户端。
消息
由于有界扫描没有解析出原生报告调用,本页不采用未经确认的 PostgreSQL 固定消息变体。
诊断
检查例程声明和实际执行限制的实现,确认尝试的操作是否修改 SQL 数据以及错误来自哪一边界。
处理
只有在所有者文档支持时才修改数据访问契约,或把写操作移到允许的边界。不要推断通用重试。
版本
锁定目录将该条件的已知下界记为 PostgreSQL 7.4;事实块列出已发布快照,源码路径状态仅限于下方固定的 PostgreSQL 18.6 资料。
相关
来源
详见结构化证据记录,其中记录固定源码路径、扫描范围和未解决的运行边界。