2013-01-13 46 views
1

我想刪除與外鍵連接的Oracle表中的行。爲了刪除表中的行,我有兩個選項:使用觸發器刪除Oracle表中的行

  1. 兩個DML語句必須嚴格按順序運行。

  2. Oracle刪除前在主鍵表上觸發。

哪種方法更好?我在Java 7中使用JDBC Oracle瘦驅動程序。

+1

您也可以使用ON DELETE CASCADE。 –

+0

有趣的建議。我必須在表格上附加CASCADE DELETE。這是比觸發器更好的性能嗎? –

+0

觸發器每行需要觸發一次,約束可以一次刪除所有子行。 –

回答

3

請勿放置觸發器。你不應該隱藏那樣的重要東西。

CASCADE是一個選項,但是personnaly我會去做一個刪除的存儲過程。因此,想要刪除一行的人必須使用該程序,並且他(她)知道它也會刪除子表中的行。

+0

我決定使用CASCADE DELETE。謝謝! –