Restrictions for system-period temporal tables
System-period temporal tables are subject to a number of restrictions. These restrictions can impact your implementation of system-period temporal tables.
Following are the restrictions for system-period temporal tables:
- Label-based access control (LBAC) is not supported on system-period temporal tables. While system-period data versioning is enabled, adding row and column labels to either a system-period temporal table or a history table is blocked. When versioning is enabled with an ALTER TABLE statement, the database manager ensures that both the system-period temporal table and the history table do not have rows or columns secured with labels.
- ALTER operations that cause a potential loss of data are not supported on system-period temporal tables.
- ALTER TABLE ACTIVATE NOT LOGGED INITIALLY statements are blocked for both the system-period temporal table and the history table.
- A system-period temporal table cannot be altered to become a materialized query table (MQT).
- Utilities that delete data from system-period temporal tables are blocked, including LOAD REPLACE and IMPORT REPLACE.
- The TRUNCATE statement is not supported against a system-period temporal table.
- The following schema-changing operations are not supported against
system-period temporal tables:
- ALTER TABLE DROP COLUMN
- ALTER TABLE ALTER COL (Altering string data types to a type that requires data truncation is not supported. Altering numeric data types to a lower precision type is also not supported).
- ALTER TABLE ADD GENERATED COLUMN
- For point-in-time recovery, if a table space that contains the system-period temporal table is being rolled forward to a point in time, the table space that contains the associated history table must also be rolled forward to the same point in time as a set. Similarly when the table space for a history table is rolled-forward to a point in time, the table space for the system-period temporal table or a bitemporal table also must be rolled-forward to the same point in time. However, rolling only the system-period temporal tables table space (or the history tables table space) to the end of logs is allowed.
- A nickname can be created over a remote system-period temporal table, but the temporal information is not exposed and temporal operations over nicknames are not supported. For instance, temporal data definition operations and temporal queries against federated nicknames are blocked.
- IMPORT and LOAD operations into system-period temporal tables are blocked if the CURRENT TEMPORAL SYSTEM_TIME special register is set to a non-null value.