Age Owner TLA Line data Source code
1 : #include <stdio.h> 2 : #include <stdlib.h> 3 : #include <string.h> 4 : 5 : EXEC SQL INCLUDE ../regression; 6 : 5072 meskes 7 CBC 1 : int main() { 8 : EXEC SQL char text[25]; 9 : 6094 10 1 : ECPGdebug(1, stderr); 11 1 : EXEC SQL CONNECT TO REGRESSDB1; 12 : 13 1 : EXEC SQL SET AUTOCOMMIT TO ON; 14 : EXEC SQL WHENEVER SQLWARNING SQLPRINT; 15 : EXEC SQL WHENEVER SQLERROR SQLPRINT; 16 : 17 1 : EXEC SQL CREATE TABLE My_Table ( Item1 int, Item2 text ); 5717 18 1 : EXEC SQL CREATE TABLE Log (name text, w text); 6094 19 1 : 20 1 : EXEC SQL CREATE FUNCTION My_Table_Check() RETURNS trigger 21 : AS $test$ 22 : BEGIN 23 : INSERT INTO Log VALUES(TG_NAME, TG_WHEN); 24 : RETURN NEW; 25 : END; $test$ 26 : LANGUAGE plpgsql; 27 1 : 28 1 : EXEC SQL CREATE TRIGGER My_Table_Check_Trigger 29 : BEFORE INSERT 30 : ON My_Table 31 : FOR EACH ROW 32 : EXECUTE PROCEDURE My_Table_Check(); 33 1 : 34 1 : EXEC SQL INSERT INTO My_Table VALUES (1234, 'Some random text'); 35 1 : EXEC SQL INSERT INTO My_Table VALUES (5678, 'The Quick Brown'); 5717 36 1 : EXEC SQL SELECT name INTO :text FROM Log LIMIT 1; 37 1 : printf("Trigger %s fired.\n", text); 38 : 6094 39 1 : EXEC SQL DROP TRIGGER My_Table_Check_Trigger ON My_Table; 40 1 : EXEC SQL DROP FUNCTION My_Table_Check(); 5717 41 1 : EXEC SQL DROP TABLE Log; 6094 42 1 : EXEC SQL DROP TABLE My_Table; 43 1 : 44 1 : EXEC SQL DISCONNECT ALL; 45 1 : 46 1 : return 0; 47 : }