| Version 1 (modified by , 35 hours ago) ( diff ) |
|---|
Автоматско поставување на датум на трансакција
Опис
Овој тригер автоматски го поставува датумот на трансакцијата (date) доколку при внесување на трансакција истиот не е зададен, базата на податоци ќе го користи тековниот системски датум и време
Со ова се обезбедува дека секоја трансакција има валиден временски запис
Табели опфатени со тригерот
transaction
Тип на тригер
- BEFORE INSERT
Активиран над табелата transaction
SQL код
CREATE OR REPLACE FUNCTION set_transaction_date()
RETURNS TRIGGER
LANGUAGE plpgsql
AS $$
BEGIN
IF NEW.date IS NULL THEN
NEW.date := NOW();
END IF;
RETURN NEW;
END;
$$;
CREATE TRIGGER trg_set_transaction_date
BEFORE INSERT
ON transaction
FOR EACH ROW
EXECUTE FUNCTION set_transaction_date();
Објаснување на логиката
Пред внесување на нова трансакција:
- се проверува дали колоната
dateе празна - доколку е
NULL, се поставува тековниот датум и време
Причина за користење
Овој тригер е важен затоа што:
- овозможува стандардизирано однесување при внесување податоци
- времето е клучен атрибут за финансиски податоци
- апликацијата не секогаш е сигурен извор
- се елиминираат празни или невалидни датуми
Исто така:
- го поедноставува API-то
- ја намалува комплексноста на frontend-логиката
Note:
See TracWiki
for help on using the wiki.
