25007
Read PG 18 manual ↗schema_and_data_statement_mixing_not_supported
- SQLSTATE
- 25007
- Condition name
- schema_and_data_statement_mixing_not_supported
- Class
- Invalid Transaction State
- Source macro
- ERRCODE_SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTED
- Evidence
- Definition only
English SQLSTATE atlas: authored explanations and source/runtime evidence are separate from the manual definitions. View source ↗
At a glance
25007 names a transaction-state condition for mixing schema and data statements. The fixed PostgreSQL 18.6 core scan resolves no direct report group, so this page does not manufacture a SQL example.
Meaning
The condition name describes a narrow statement-composition boundary. It is not a general replacement for syntax, read-only, or active-transaction errors.
Diagnosis
Keep the protocol or API operation, statement sequence, and exact server SQLSTATE together. The fixed core evidence has no message template to quote and no safe natural case to run.
Response
Use the API’s documented statement grouping and separate schema changes from data operations when it requires that boundary. Do not invent a retry or RAISE path from the condition name.
Source message and runtime boundary
The fixed errcodes.txt row defines the condition and macro; the resolved call scan in raw/calls/REL_18_6.jsonl contains no direct report group, so this batch publishes no message template and constructs no natural SQL trigger.
Applicability boundary and case
The selected runner cases on PostgreSQL 18.6 and 10.21 are not_applicable; they record the source boundary and contain no copyable SQL trigger. Structured evidence · case export
Versions and limits
The generated facts record the locked catalogue membership. Both runner targets are not_applicable source-boundary cases; no natural runtime coverage is claimed.
Sources
src.errcodes.18.6(SHA-2566e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba)src.calls.REL_18_6—raw/calls/REL_18_6.jsonl(SHA-2569ee8a0e81d8f0825c5c1ae45583439859a26e602bdd4ce2f2a62aa278867ccbf)
Source evidence
Evidence belongs to the frozen source and runtime versions listed here. It is not a runtime verification of the selected manual version.
25007 is schema_and_data_statement_mixing_not_supported in Class 25.
Method: Read the fixed condition row and macro.
Limits: The name points to a statement-composition boundary, not a generic DDL error.
The exhaustive resolved PostgreSQL 18.6 call scan contains no direct 25007 report group; no natural SQL reproduction or message template is published here.
Method: Scan fixed source call records for SQLSTATE 25007.
Limits: This batch does not turn SQL/MED or protocol-only assumptions into a backend case.
- src/backend/utils/errcodes.txt · REL_18_6 ·
724edf9bde9d356724ad384a2e196edc3c9f80f7 raw/calls/REL_18_6.jsonl· ·
Message templates
No extracted message template is attached to this condition.
Reproduction & repair cases
schema_data_statement_boundary · PG 10, 18
Preconditions
- A runner-owned disposable target is provisioned.
Trigger: Source/definition evidence only; no natural SQL trigger is claimed.
Expected assertions
- No fabricated SQL trigger is included; the selected run records a definition/source boundary.
Repair: Follow the explicit transaction or source boundary described by the case.
Cleanup: Drop the case schema with an owner connection.
Recorded runtime evidence
18.6 (Homebrew) · not_applicable
Run: 25007-batch2-latest-20260909
{
"case_status": "not_applicable"
}10.21 (Debian 10.21-1.pgdg90+1) · not_applicable
Run: 25007-batch2-pg10-20260909
{
"case_status": "not_applicable"
}Definition snapshot: english-manuals:96c34ef7c6b3d919819153d4f58… · English manual source