Which of the following is the correct basic syntax to create a trigger in PostgreSQL?
easy📝 Syntax Q3 of 15
PostgreSQL - Triggers in PostgreSQL
Which of the following is the correct basic syntax to create a trigger in PostgreSQL?
ACREATE TRIGGER trigger_name ON table_name BEFORE UPDATE EXECUTE FUNCTION function_name();
BCREATE TRIGGER trigger_name AFTER DELETE ON table_name FOR EACH STATEMENT EXECUTE function_name();
CCREATE TRIGGER trigger_name BEFORE INSERT ON table_name FOR EACH ROW EXECUTE FUNCTION function_name();
DCREATE TRIGGER trigger_name BEFORE INSERT EXECUTE FUNCTION function_name();
Step-by-Step Solution
Solution:
Step 1: Recall correct trigger syntax
PostgreSQL uses CREATE TRIGGER with timing (BEFORE/AFTER), event (INSERT/UPDATE/DELETE), table, and EXECUTE FUNCTION.
Step 2: Check each option
CREATE TRIGGER trigger_name BEFORE INSERT ON table_name FOR EACH ROW EXECUTE FUNCTION function_name(); matches correct syntax exactly. CREATE TRIGGER trigger_name AFTER DELETE ON table_name FOR EACH STATEMENT EXECUTE function_name(); uses EXECUTE without FUNCTION or PROCEDURE (invalid), C misses FOR EACH ROW/STATEMENT, D misses table name.
Final Answer:
CREATE TRIGGER trigger_name BEFORE INSERT ON table_name FOR EACH ROW EXECUTE FUNCTION function_name(); -> Option C
Quick Check:
Trigger syntax = CREATE TRIGGER trigger_name BEFORE INSERT ON table_name FOR EACH ROW EXECUTE FUNCTION function_name(); [OK]