#include <ecpglib.h>
#include <ecpgerrno.h>
#include <sqlca.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
Go to the source code of this file.
Defines | |
#define | ECPGdebug(X, Y) ECPGdebug((X)+100,(Y)) |
Functions | |
int | main () |
#define ECPGdebug | ( | X, | ||
Y | ||||
) | ECPGdebug((X)+100,(Y)) |
Definition at line 7 of file sql-func.c.
int main | ( | void | ) |
Definition at line 25 of file sql-func.c.
References ECPGconnect(), ECPGdebug, ECPGdisconnect(), ECPGdo(), ECPGsetcommit(), ECPGst_normal, ECPGt_char, ECPGt_EOIT, ECPGt_EORT, ECPGt_NO_INDICATOR, NULL, sqlca, and sqlprint().
{ #line 8 "func.pgc" char text [ 25 ] ; #line 8 "func.pgc" ECPGdebug(1, stderr); { ECPGconnect(__LINE__, 0, "regress1" , NULL, NULL , NULL, 0); } #line 11 "func.pgc" { ECPGsetcommit(__LINE__, "on", NULL);} #line 13 "func.pgc" /* exec sql whenever sql_warning sqlprint ; */ #line 14 "func.pgc" /* exec sql whenever sqlerror sqlprint ; */ #line 15 "func.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "create table My_Table ( Item1 int , Item2 text )", ECPGt_EOIT, ECPGt_EORT); #line 17 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 17 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 17 "func.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "create table Log ( name text , w text )", ECPGt_EOIT, ECPGt_EORT); #line 18 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 18 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 18 "func.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "create function My_Table_Check ( ) returns trigger as $test$\ BEGIN\ INSERT INTO Log VALUES(TG_NAME, TG_WHEN);\ RETURN NEW;\ END; $test$ language plpgsql", ECPGt_EOIT, ECPGt_EORT); #line 26 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 26 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 26 "func.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "create trigger My_Table_Check_Trigger before insert on My_Table for each row execute procedure My_Table_Check ( )", ECPGt_EOIT, ECPGt_EORT); #line 32 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 32 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 32 "func.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "insert into My_Table values ( 1234 , 'Some random text' )", ECPGt_EOIT, ECPGt_EORT); #line 34 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 34 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 34 "func.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "insert into My_Table values ( 5678 , 'The Quick Brown' )", ECPGt_EOIT, ECPGt_EORT); #line 35 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 35 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 35 "func.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "select name from Log limit 1", ECPGt_EOIT, ECPGt_char,(text),(long)25,(long)1,(25)*sizeof(char), ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EORT); #line 36 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 36 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 36 "func.pgc" printf("Trigger %s fired.\n", text); { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "drop trigger My_Table_Check_Trigger on My_Table", ECPGt_EOIT, ECPGt_EORT); #line 39 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 39 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 39 "func.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "drop function My_Table_Check ( )", ECPGt_EOIT, ECPGt_EORT); #line 40 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 40 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 40 "func.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "drop table Log", ECPGt_EOIT, ECPGt_EORT); #line 41 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 41 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 41 "func.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "drop table My_Table", ECPGt_EOIT, ECPGt_EORT); #line 42 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 42 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 42 "func.pgc" { ECPGdisconnect(__LINE__, "ALL"); #line 44 "func.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 44 "func.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 44 "func.pgc" return 0; }