fix: CREATE OR REPLACE TRIGGER (idempotent), FK-Indizes für campaign_recipients und campaign_triggers

This commit is contained in:
2026-04-17 08:59:38 +00:00
parent 5a144e0ce4
commit c4d3c348c1

View File

@@ -25,6 +25,8 @@ CREATE TABLE IF NOT EXISTS campaign_recipients (
) )
); );
CREATE INDEX IF NOT EXISTS idx_campaign_recipients_campaign_id ON campaign_recipients(campaign_id);
CREATE TABLE IF NOT EXISTS campaign_triggers ( CREATE TABLE IF NOT EXISTS campaign_triggers (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(), id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
campaign_id UUID NOT NULL REFERENCES campaigns(id) ON DELETE CASCADE, campaign_id UUID NOT NULL REFERENCES campaigns(id) ON DELETE CASCADE,
@@ -32,11 +34,13 @@ CREATE TABLE IF NOT EXISTS campaign_triggers (
trigger_value TEXT NOT NULL trigger_value TEXT NOT NULL
); );
CREATE INDEX IF NOT EXISTS idx_campaign_triggers_campaign_id ON campaign_triggers(campaign_id);
CREATE OR REPLACE FUNCTION update_updated_at() CREATE OR REPLACE FUNCTION update_updated_at()
RETURNS TRIGGER AS $$ RETURNS TRIGGER AS $$
BEGIN NEW.updated_at = now(); RETURN NEW; END; BEGIN NEW.updated_at = now(); RETURN NEW; END;
$$ LANGUAGE plpgsql; $$ LANGUAGE plpgsql;
CREATE TRIGGER campaigns_updated_at CREATE OR REPLACE TRIGGER campaigns_updated_at
BEFORE UPDATE ON campaigns BEFORE UPDATE ON campaigns
FOR EACH ROW EXECUTE FUNCTION update_updated_at(); FOR EACH ROW EXECUTE FUNCTION update_updated_at();