Триггер даты для pgAdmin, написанный на C - PullRequest
1 голос
/ 25 марта 2011

У нас на Linux установлен Postgres 8, и я копирую данные и триггеры из нашей версии для Windows в эту новую. Тем не менее, plpgsql не устанавливается по умолчанию, поэтому копирование моего источника триггера не удается. У меня есть только C или внутренние языки на выбор; если не попросить администратора установить plpgsql, кто-нибудь может мне помочь преобразовать это:

CREATE OR REPLACE FUNCTION "datestampTrigger"()

RETURNS "trigger" AS
'BEGIN
-- check for datecreated
IF NEW.datecreated IS NULL THEN
    NEW.datecreated := ''now'';
END IF;
NEW.datelastmodified := ''now'';
RETURN NEW;
END;'
  LANGUAGE plpgsql VOLATILE;

1 Ответ

1 голос
/ 25 марта 2011

В большинстве систем linux, с которыми я столкнулся, plpgsql фактически установлен в системе, но не включен в шаблон базы данных. Выполнение следующего «активирует» plpgsql в вашей базе данных.

CREATE LANGUAGE plpgsql;
...