- CURRENT VALIDTIME
- Specifies that the update is current in the valid-time dimension if the target table supports valid time.A current UPDATE affects only current rows. Future rows with valid-time periods that do not overlap TEMPORAL_TIMESTAMP or TEMPORAL_DATE will not be updated
If the target table does not support valid time, at least one of the referenced tables must be a table with valid time. The update is not a current update. The CURRENT VALIDTIME qualifier is used to qualify rows from the referenced tables in the valid-time dimension. In the transaction-time dimension, open rows qualify.
If the session temporal qualifier is not set and the temporal qualifier is omitted from the UPDATE statement, the default qualifier is CURRENT VALIDTIME.
CURRENT DML modifications can cause serializability issues for concurrent transactions. See Potential Concurrency Issues with Current Temporal DML for information on avoiding these issues. - VALIDTIME and SEQUENCED VALIDTIME
- Specifies that the update is sequenced in the valid-time dimension if the target table supports valid time.
If the target table does not support valid time, at least one of the referenced tables must be a table with valid time. The update is not a sequenced update. The VALIDTIME or SEQUENCED VALIDTIME qualifier is used to qualify rows from the referenced tables in the valid-time dimension. In the transaction-time dimension, open rows qualify.
A sequenced update on a target table that supports valid time sets the valid-time value to the intersection of the valid-time column value and period_expression.
- period_expression
Specifies the period of applicability for the DML statement.
The period of applicability must be a period constant expression that does not reference any columns, but can reference parameterized values and the TEMPORAL_DATE or TEMPORAL_TIMESTAMP built-in functions.
The period of applicability can also be a self-contained noncorrelated scalar subquery that is always nonsequenced in the time dimensions regardless of the temporal qualifier for the DML statement.
If a period_expression is specified, the valid-time column cannot be specified or referenced anywhere in the query. If the valid-time column is a derived period column, the component columns cannot be specified or referenced anywhere in the query.If period_expression is omitted, the period of applicability defaults to PERIOD'(0001-01-01, UNTIL_CHANGED)' for a PERIOD(DATE) valid-time column or PERIOD '(0001-01-01 00:00:00.000000+00:00, UNTIL_CHANGED)' for a PERIOD(TIMESTAMP( n ) WITH TIME ZONE) valid-time column, where precision n and WITH TIME ZONE are optional.
- NONSEQUENCED VALIDTIME
- Specifies that the update is nonsequenced in the valid-time dimension if the target table supports valid time.
If the target table does not support valid time, at least one of the referenced tables must be a table with valid time. The update is not a nonsequenced update. The NONSEQUENCED VALIDTIME qualifier is used to qualify rows from the referenced tables in the valid-time dimension. In the transaction-time dimension, open rows qualify.
- NONTEMPORAL
- Specifies that the update is nonsequenced in the valid-time dimension and nontemporal in the transaction-time dimension.
A nontemporal update treats the transaction-time column as a nontemporal column.
The table must support transaction time.
- update_statement
- Specifies conventional syntax for the UPDATE statement.