Tessera DB
PX-01
View 06
What the data said, and when it said it.
Every record carries two times: when it was true, and when the database recorded it. On a table that keeps its history, SQL reads it as it was at any instant.
01
03
View 06 · Time
History that is part of the record, not a copy kept somewhere else.
An UPDATE that overwrites a row loses the question a regulator will ask. On a system-versioned table the old row is kept as history, and AS OF reads the table exactly as it stood.
2
Time axes
AS OF
Any instant
SQL:2011
System versioning
02
03
What it does.
01
Two time axes
Valid time (when it was true) and transaction time (when it was recorded) on every record.
02
System-versioned tables
CREATE TABLE … WITH SYSTEM VERSIONING keeps history from the first row; ALTER TABLE … ADD SYSTEM VERSIONING from now on.
03
Retention
SET HISTORY RETENTION '90 days', or FOREVER, the default. History costs one old row per UPDATE and per DELETE.
04
Erasure
DELETE HISTORY FROM erases chosen rows' past, for a right-to-erasure request.
05
Temporal TQL
POST /api/query/temporal reads records by their own valid or transaction time, or a valid-time range.
06
Refused, not wrong
On a table that keeps no history, AS OF is refused rather than answering wrongly for every row ever changed.
03
03
History in two statements.
-- A table that keeps its history from the first row
CREATE TABLE Transfer () WITH SYSTEM VERSIONING
-- The table as it was at that instant
SELECT tid, amount FROM Transfer FOR SYSTEM_TIME AS OF '2025-09-01T12:00:00Z'