| | 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 | \\ |