fix: CREATE OR REPLACE TRIGGER (idempotent), FK-Indizes für campaign_recipients und campaign_triggers
This commit is contained in:
@@ -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();
|
||||||
|
|||||||
Reference in New Issue
Block a user