| 175 | |
| 176 | = Тригер за автоматско ажурирање на колона {{{updated_at}}} |
| 177 | Со помош на овој тригер секој пат кога ќе се смени нешто во ред од табелата {{{contains}}}, \\ |
| 178 | PostgreSQL автоматски ја ажурира колоната {{{updated_at}}} со тековниот датум и време. \\ |
| 179 | Со тоа овозможуваме да имаме увид кога последен пат била изменета некоја количина на производ. \\ |
| 180 | За да не го правиме тоа рачно секој пат,првин креираме тригер : |
| 181 | {{{#!sql |
| 182 | CREATE OR REPLACE FUNCTION update_updated_at_column() |
| 183 | RETURNS TRIGGER AS $$ |
| 184 | BEGIN |
| 185 | NEW.updated_at = CURRENT_TIMESTAMP; |
| 186 | RETURN NEW; |
| 187 | END; |
| 188 | $$ language 'plpgsql'; |
| 189 | }}} |
| 190 | Потоа се креира тригерот што ја повикува таа функција: |
| 191 | {{{#!sql |
| 192 | CREATE TRIGGER update_contains_updated_at |
| 193 | BEFORE UPDATE ON contains |
| 194 | FOR EACH ROW |
| 195 | EXECUTE PROCEDURE update_updated_at_column(); |
| 196 | }}} |
| 197 | \\ |
| 198 | За да направиме да се ажурира {{{updated_at}}} автоматски кога менуваме нешто во табелата, креираме тригер: |
| 199 | {{{#!sql |
| 200 | CREATE OR REPLACE FUNCTION update_updated_at_column() |
| 201 | RETURNS TRIGGER AS $$ |
| 202 | BEGIN |
| 203 | NEW.updated_at = CURRENT_TIMESTAMP; |
| 204 | RETURN NEW; |
| 205 | END; |
| 206 | $$ LANGUAGE plpgsql; |
| 207 | }}} |
| 208 | \\ |