1 # The author disclaims copyright to this source code. In place of 2 # a legal notice, here is a blessing: 3 # 4 # May you do good and not evil. 5 # May you find forgiveness for yourself and forgive others. 6 # May you share freely, never taking more than you give. 7 # 8 #*********************************************************************** 9 # 10 # This file tests the triggers of views. 11 # 12 13 set testdir [file dirname $argv0] 14 source $testdir/tester.tcl 15 ifcapable {!trigger} { 16 finish_test 17 return 18 } 19 20 # Ticket #844 21 # 22 do_test trigger5-1.1 { 23 execsql { 24 CREATE TABLE Item( 25 a integer PRIMARY KEY NOT NULL , 26 b double NULL , 27 c int NOT NULL DEFAULT 0 28 ); 29 CREATE TABLE Undo(UndoAction TEXT); 30 INSERT INTO Item VALUES (1,38205.60865,340); 31 CREATE TRIGGER trigItem_UNDO_AD AFTER DELETE ON Item FOR EACH ROW 32 BEGIN 33 INSERT INTO Undo SELECT 'INSERT INTO Item (a,b,c) VALUES (' 34 || coalesce(old.a,'NULL') || ',' || quote(old.b) || ',' || old.c || ');'; 35 END; 36 DELETE FROM Item WHERE a = 1; 37 SELECT * FROM Undo; 38 } 39 } {{INSERT INTO Item (a,b,c) VALUES (1,38205.60865,340);}} 40 41 integrity_check trigger5-99.9 42 43 finish_test 44