Hei guys。這一點很簡單。我有一些表叫做人,學生,僱員。 IDPERSON = idstudent,idperson = idemployee。到現在爲止還挺好。級聯觸發不起作用
我試圖做一個刪除級聯觸發器,每當我刪除一個人,它刪除表中的行人,並刪除取決於如果該人被放在表學生或僱員。
因爲在我找到的人名(姓名,IDPERSON,電話,電子郵件等)和Student/Emplyee中,我發現了更多的技術細節,比如:ScheduleEmployee,IdAccomodationStudent等等。
CREATE FUNCTION stergereStudenti() RETURNS trigger AS $$
BEGIN
DELETE FROM persoane WHERE idpersoana = OLD.idpersoana;
RETURN NULL;
END;
$$ LANGUAGE plpgsql;
CREATE TRIGGER trgStergereStudenti BEFORE DELETE ON TABLE studenti
FOR EACH ROW EXECUTE stergereStudenti();
由於某種原因,它不工作。我看着舊的stackoverflow帖子,我得到了上面的觸發器,並在我的數據庫addapted。但是,不能正常工作。請幫助:(
應該不是你的扳機上'刪除之前表persoane'? –
嗯..不這麼認爲.. –
你說你想從PERSON表中刪除一個條目,並刪除相關的STUDENT或EMPLOYEE。學生被刪除,它會刪除關聯的人員。你實際執行什麼聲明? –