Validity of Temporal Circular Buffers

Temporal circular buffer values must satisfy the constraints specified in the section called “Validity of Temporal Types” so that they are well defined. An error is raised whenever one of these constraints are not satisfied. Examples of incorrect values are as follows.

-- Null values are not allowed
SELECT tcbuffer 'NULL@2001-01-01 08:05:00';
SELECT tcbuffer 'Point(0 0)@NULL';
-- Base type is not a circular buffer
SELECT tcbuffer 'Point(0 0)@2001-01-01 08:05:00';

We give next the functions and operators for temporal circular buffer. Most functions and operators for temporal types described in the previous chapters can be applied for temporal circular buffer types. Therefore, in the signatures of the functions, the notation base represents a cbuffer and the notations ttype, tpoint, and tgeompoint also represent a tcbuffer. Furthermore, the functions that have an argument of type geometry accept in addition an argument of type cbuffer. To avoid redundancy, we only present next some examples of these functions and operators for temporal circular buffers.