timing nested records table structure

timing nested records table structure#

This table contains the individual records of timing for each signal phase, and connects to the timing ID through its object_id. In this sense, there is no unique identifier in this table, as a single record does not mean much.

Table Structure#

Field

Type

NULL allowed

Default Value

Foreign key

Description

object_id

INTEGER

NO

Timing(object_id)

timing id that it refers to

index

INTEGER

NO

index within the timing id

value_phase

INTEGER

NO

0

referred phase

value_barrier

INTEGER

NO

0

not used currently in POLARIS

value_ring

INTEGER

NO

0

not used currently in POLARIS

value_position

INTEGER

NO

0

similar as index, currently not used

value_minimum

INTEGER

NO

0

minimum green time (for fixed time set min=max=green time)

value_maximum

INTEGER

NO

0

maximum green time (for fixed time set min=max=green time)

value_extend

INTEGER

NO

0

green extension for actuated phase

value_yellow

INTEGER

NO

0

yellow time

value_red

INTEGER

NO

0

all red time

(* - Primary key)

The SQL statement for table and index creation is below.

create TABLE IF NOT EXISTS "Timing_Nested_Records" (
    "object_id"         INTEGER NOT NULL,
    "index"             INTEGER NOT NULL,
    "value_phase"       INTEGER NOT NULL DEFAULT 0,
    "value_barrier"     INTEGER NOT NULL DEFAULT 0,
    "value_ring"        INTEGER NOT NULL DEFAULT 0,
    "value_position"    INTEGER NOT NULL DEFAULT 0,
    "value_minimum"     INTEGER NOT NULL DEFAULT 0,
    "value_maximum"     INTEGER NOT NULL DEFAULT 0,
    "value_extend"      INTEGER NOT NULL DEFAULT 0,
    "value_yellow"      INTEGER NOT NULL DEFAULT 0,
    "value_red"         INTEGER NOT NULL DEFAULT 0,

    CONSTRAINT "object_id_fk" FOREIGN KEY("object_id") REFERENCES "Timing"("timing_id") ON DELETE CASCADE
);

CREATE INDEX IF NOT EXISTS "Timing_nested_records_index_i" ON "Timing_nested_records" ("index");
CREATE INDEX IF NOT EXISTS "Timing_nested_records_object_id_i" ON "Timing_nested_records" ("object_id");