Bug #120432 Support SQL:2011 system-versioned tables (WITH SYSTEM VERSIONING, FOR SYSTEM_TIME AS OF)
Submitted: 10 May 19:17
Reporter: Vinicius Malvestio Grippa Email Updates:
Status: Open Impact on me:
None 
Category:MySQL Server: DDL Severity:S4 (Feature request)
Version: OS:Any
Assigned to: CPU Architecture:Any
Tags: ROADMAP_CANDIDATE

[10 May 19:17] Vinicius Malvestio Grippa
Description:
MySQL has no first-class way to query a table's historical state. Users who need point-in-time queries today restore backups, parse binlogs, or maintain ad-hoc audit tables driven by triggers. The SQL:2011 standard defines system-versioned tables for exactly this; the feature is in Oracle (Flashback), SQL Server (temporal tables), DB2, and MariaDB (since 10.3). It is the most prominent SQL-standard data-management feature MySQL is currently missing.

Why it matters:

Auditing and compliance: regulators routinely ask "show me this row as of date X"; today's answer is a backup restore.
Debugging: "what did this row look like before yesterday's deploy" without leaving the database.
Point-in-time analytics without a separate warehouse or PITR restore.
SQL-standard portability with Oracle, SQL Server, DB2, and MariaDB.

Compatibility: Opt-in per table via WITH SYSTEM VERSIONING. Tables without it behave identically to today. Standard syntax (FOR SYSTEM_TIME AS OF) does not collide with any current MySQL grammar.

Roadmap theme: Developer experience (primary), Observability (secondary).

How to repeat:
N/A

Suggested fix:
N/A
[10 May 19:22] Vinicius Malvestio Grippa
system-versioned-tables-for-mysql-sql-2011-temporal-tables

Attachment: system-versioned-tables-for-mysql-sql-2011-temporal-tables.json (application/json, text), 14.96 KiB.