| 326 | | RETURNS trigger |
| 327 | | LANGUAGE plpgsql |
| 328 | | AS $$ |
| 329 | | BEGIN |
| 330 | | RAISE EXCEPTION 'Reviews cannot be deleted directly. Use the soft-delete procedure.'; |
| 331 | | END; |
| 332 | | $$; |
| 333 | | |
| 334 | | DROP TRIGGER IF EXISTS trg_reviews_no_delete ON reviews; |
| 335 | | CREATE TRIGGER trg_reviews_no_delete |
| 336 | | BEFORE DELETE |
| 337 | | ON reviews |
| 338 | | FOR EACH ROW |
| 339 | | EXECUTE FUNCTION petify_trg_reviews_no_delete(); |
| 340 | | |
| 341 | | CREATE OR REPLACE FUNCTION petify_trg_no_update_generic() |
| 342 | | RETURNS trigger |
| 343 | | LANGUAGE plpgsql |
| 344 | | AS $$ |
| 345 | | BEGIN |
| 346 | | RAISE EXCEPTION 'Updates are not allowed on this table.'; |
| 347 | | END; |
| 348 | | $$; |
| 349 | | |
| 350 | | DROP TRIGGER IF EXISTS trg_user_reviews_no_update ON user_reviews; |
| 351 | | CREATE TRIGGER trg_user_reviews_no_update |
| 352 | | BEFORE UPDATE |
| 353 | | ON user_reviews |
| 354 | | FOR EACH ROW |
| 355 | | EXECUTE FUNCTION petify_trg_no_update_generic(); |
| 356 | | |