17.10 - Trigger Support for Teradata Unity - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL Data Definition Language Detailed Topics

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
July 2021
Content Type
Programming Reference
Publication ID
B035-1184-171K
Language
English (United States)

Teradata Unity sends request-specific context information as part of a request that executes a trigger to enable Vantage to change the result of the executed trigger indirectly by substituting a value predefined by Teradata Unity for a non-deterministic result. Vantage makes this context information available to a trigger when it is executed from the default connection for the session.

Consider, for example, the following table and trigger definitions, where Teradata Unity overrides the RANDOM functions specified in the select lists of the triggered INSERT … SELECT requests specified in the trigger definitions.

CREATE TABLE t1 (
  a INTEGER,
  b INTEGER)
PRIMARY INDEX (a);

CREATE TABLE t2 (
  a INTEGER,
  b INTEGER)
PRIMARY INDEX (a);

CREATE TABLE t3 (
  a INTEGER,
  b INTEGER)
PRIMARY INDEX(a);

CREATE TRIGGER trigt1
  AFTER INSERT ON t1 (
    INSERT t2
      SELECT a, RANDOM(200, 300)+1
      FROM t1;);

CREATE TRIGGER trigt2
  AFTER INSERT ON t2 (
    INSERT t3
      SELECT a, RANDOM(200, 300)+1
      FROM t2;);