>>obey TEST_1_1_3_1(tests);
>>
>>------------------------------------------------------------------
>>-- 	TEST CASE
>>------------------------------------------------------------------
>>
>>-- Correlation name must not be the same as the subject table name.
>>CREATE TRIGGER trig31 AFTER INSERT
+>	ON tab1A
+>	REFERENCING NEW AS tab1A
+>	FOR EACH STATEMENT
+>		UPDATE tab1A
+>		SET d= 100 WHERE a = 0;

*** ERROR[11021] The subject table name cannot be used in the REFERENCING clause.

*** ERROR[1079] SQL was not able to prepare the statement.

--- SQL operation failed with errors.
>>
>>-- A row trigger cannot select from the transition table.
>>CREATE TRIGGER trig32 AFTER UPDATE ON tab1a 
+>	REFERENCING new AS mynew
+>	FOR EACH ROW
+>	INSERT INTO t2 SELECT a FROM mynew;

*** ERROR[11019] Only statement triggers can scan the transition table.

*** ERROR[1079] SQL was not able to prepare the statement.

--- SQL operation failed with errors.
>>
>>-- A before trigger cannot select from the transition table.
>>CREATE TRIGGER trig33 BEFORE UPDATE ON tab1a 
+>	REFERENCING new AS mynew
+>	FOR EACH ROW
+>	SET MYNEW.B = (SELECT MAX(a) FROM mynew);

*** ERROR[11019] Only statement triggers can scan the transition table.

*** ERROR[1079] SQL was not able to prepare the statement.

--- SQL operation failed with errors.
>>
>>-- The transition table cannot be changed.
>>CREATE TRIGGER trig34 AFTER UPDATE ON tab1a 
+>	REFERENCING new AS mynew
+>	FOR EACH STATEMENT
+>	UPDATE mynew SET b=2;

*** ERROR[11020] Ambiguous or invalid use of transition name MYNEW.

*** ERROR[1079] SQL was not able to prepare the statement.

--- SQL operation failed with errors.
>>
>>-- Correlation name T1 conflicts with qualified identifier of table CAT.SCHM.T1.
>>CREATE TRIGGER trig35 AFTER UPDATE ON tab1a 
+>	REFERENCING new AS t1
+>	FOR EACH STATEMENT
+>	INSERT INTO t2 SELECT MAX(a), MAX(b) FROM cat1.schm.t1;

*** ERROR[4057] Correlation name T1 conflicts with qualified identifier of table CAT1.SCHM.T1.

*** ERROR[1079] SQL was not able to prepare the statement.

--- SQL operation failed with errors.
>>
>>-- Using the same name for OLD and NEW
>>CREATE TRIGGER trig36 AFTER UPDATE ON t1
+>	REFERENCING old AS xxx, new AS xxx
+>	FOR EACH STATEMENT
+>	UPDATE t2 SET b=2;

*** ERROR[11024] Specifying the same name, XXX, for both OLD and NEW is not allowed.

*** ERROR[1079] SQL was not able to prepare the statement.

--- SQL operation failed with errors.
>>
>>-- Using subject table rows without SELECTing them
>>CREATE TRIGGER trig37 AFTER UPDATE ON t1
+>	REFERENCING new AS mynew
+>	FOR EACH ROW
+>	INSERT INTO t2 VALUES(t1.a, t1.b);

*** ERROR[4002] Column T1.A is not found.  Table T1 not exposed.  Tables in scope: "OLD@", "NEW@", MYNEW.  Default schema: CAT1.SCHM.

*** ERROR[1079] SQL was not able to prepare the statement.

--- SQL operation failed with errors.
>>
>>-- Using MYNEW in an inner scope (should work)
>>INSERT INTO t1 VALUES(7,7);

--- 1 row(s) inserted.
>>INSERT INTO t3 VALUES(7,5);

--- 1 row(s) inserted.
>>
>>CREATE TRIGGER trig38 AFTER UPDATE ON t1
+>	REFERENCING old AS myold, new AS mynew
+>	FOR EACH STATEMENT
+>	INSERT INTO t2(a,b)
+>		SELECT myold.b, mynew.b
+>		FROM   myold, mynew
+>		WHERE  mynew.a =
+>			(SELECT mynew.a FROM t3 mynew
+>			 WHERE mynew.b=5);

--- SQL operation complete.
>>
>>UPDATE t1 SET b=b+1;

--- 1 row(s) updated.
>>SELECT * FROM t1;

A            B          
-----------  -----------

          7            8

--- 1 row(s) selected.
>>SELECT * FROM t2;

A            B          
-----------  -----------

          7            8

--- 1 row(s) selected.
>>
>>-- Giving correlation names to MYNEW and MYOLD (Should work)
>>CREATE TRIGGER trig39 AFTER UPDATE ON tab1a 
+>	REFERENCING old AS myold, new AS mynew
+>	FOR EACH STATEMENT
+>	INSERT INTO t2(a,b)
+>		SELECT o.b, n.b
+>		FROM   myold o, mynew n
+>		WHERE  o.b <> n.b;

--- SQL operation complete.
>>
>>--------------------------------------------------------
>>LOG;
