func.pgc
来自「postgresql8.3.4源码,开源数据库」· PGC 代码 · 共 48 行
PGC
48 行
#include <stdio.h>#include <stdlib.h>#include <string.h>EXEC SQL INCLUDE ../regression;int main(int argc, char* argv[]) { EXEC SQL char text[25]; ECPGdebug(1, stderr); EXEC SQL CONNECT TO REGRESSDB1; EXEC SQL SET AUTOCOMMIT TO ON; EXEC SQL WHENEVER SQLWARNING SQLPRINT; EXEC SQL WHENEVER SQLERROR SQLPRINT; EXEC SQL CREATE TABLE My_Table ( Item1 int, Item2 text ); EXEC SQL CREATE TABLE Log (name text, w text); EXEC SQL CREATE FUNCTION My_Table_Check() RETURNS trigger AS $test$ BEGIN INSERT INTO Log VALUES(TG_NAME, TG_WHEN); RETURN NEW; END; $test$ LANGUAGE plpgsql; EXEC SQL CREATE TRIGGER My_Table_Check_Trigger BEFORE INSERT ON My_Table FOR EACH ROW EXECUTE PROCEDURE My_Table_Check(); EXEC SQL INSERT INTO My_Table VALUES (1234, 'Some random text'); EXEC SQL INSERT INTO My_Table VALUES (5678, 'The Quick Brown'); EXEC SQL SELECT name INTO :text FROM Log LIMIT 1; printf("Trigger %s fired.\n", text); EXEC SQL DROP TRIGGER My_Table_Check_Trigger ON My_Table; EXEC SQL DROP FUNCTION My_Table_Check(); EXEC SQL DROP TABLE Log; EXEC SQL DROP TABLE My_Table; EXEC SQL DISCONNECT ALL; return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?