百科 / 错误代码 / Class 38 外部例程异常
38002 modifying_sql_data_not_permitted
ERROR 仅定义 参考 未实测
- 条件名
modifying_sql_data_not_permitted- 宏名称
ERRCODE_E_R_E_MODIFYING_SQL_DATA_NOT_PERMITTED- 启用版本
- 7.4
- 状态
- 活跃
版本覆盖
速览
SQLSTATE 38002 是外部例程异常类别中“不允许修改 SQL 数据”的成员。锁定的 PostgreSQL 18.6 core/contrib 扫描没有找到原生报告调用组,不能把它与 2F002 混同。
含义
区分依据是 SQLSTATE 和例程标准类别,而不是猜测 PostgreSQL 函数 volatility 规则。保留例程属于外部、远端还是客户端。
消息
由于有界扫描没有解析出原生报告调用,本页不采用未经确认的 PostgreSQL 固定消息变体。
诊断
检查例程声明和实际执行限制的实现,确认尝试的操作是否修改 SQL 数据以及错误来自哪一边界。
处理
只有在所有者文档支持时才修改数据访问契约,或把写操作移到允许的边界。不要推断通用重试。
版本
锁定目录将该条件的已知下界记为 PostgreSQL 7.4;事实块列出已发布快照,源码路径状态仅限于下方固定的 PostgreSQL 18.6 资料。
来源
- 上游源码 src/backend/utils/errcodes.txt 第 302 行
- 核验材料 raw/calls/REL_18_6.jsonl
证据
断言
每条断言都写明了是怎么核实的,以及它不覆盖什么。这一层是核验时留下的原始英文记录,照原样呈现,未经翻译。
-
38002 is modifying_sql_data_not_permitted in SQLSTATE Class 38.
-
No resolved 38002 report group was found in the locked PostgreSQL 18.6 core/contrib call scan.
-
Locked release definitions establish catalogue presence from 7.4; they do not establish a precise introducing release or runtime use.
同类错误代码
Class 38 外部例程异常 下的其他成员。