oracle_delete.sql 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. --------------------------------------------------------
  2. -- Export file for user XMS@LOCALHOST --
  3. -- Created by Administrator on 2020/1/20 星期一, 9:40:11 --
  4. --------------------------------------------------------
  5. set define off
  6. spool delete_oracle.log
  7. prompt
  8. prompt Creating trigger DELETE_ACCT
  9. prompt ============================
  10. prompt
  11. create or replace trigger xms.delete_acct
  12. after delete on xms_user_acct
  13. for each row
  14. declare
  15. -- local variables here
  16. begin
  17. --删除关联表数据
  18. DELETE FROM xms_bind_item
  19. WHERE source = :old.acct_id
  20. AND SUBSTR(bind_type, 0, 4) = 'acct';
  21. DELETE FROM xms_bind_item
  22. WHERE target = :old.acct_id
  23. AND SUBSTR(bind_type, -4) = 'acct';
  24. end delete_acct;
  25. /
  26. prompt
  27. prompt Creating trigger DELETE_APP
  28. prompt ===========================
  29. prompt
  30. create or replace trigger xms.delete_app
  31. after delete on xms_app_info
  32. for each row
  33. declare
  34. -- local variables here
  35. begin
  36. --1.删除资源关联
  37. DELETE FROM xms_app_res WHERE app_id = :old.app_id;
  38. --2.删除角色关联
  39. DELETE FROM xms_app_role WHERE app_id = :old.app_id;
  40. --删除关联表数据
  41. DELETE FROM xms_bind_item
  42. WHERE source = :old.app_id
  43. AND SUBSTR(bind_type, 0, 3) = 'app';
  44. DELETE FROM xms_bind_item
  45. WHERE target = :old.app_id
  46. AND SUBSTR(bind_type, -3) = 'app';
  47. end delete_app;
  48. /
  49. prompt
  50. prompt Creating trigger DELETE_CERT
  51. prompt ============================
  52. prompt
  53. create or replace trigger xms.delete_cert
  54. after delete on xms_user_cert
  55. for each row
  56. declare
  57. -- local variables here
  58. begin
  59. --删除关联表数据
  60. DELETE FROM xms_bind_item
  61. WHERE source = :old.cert_id
  62. AND SUBSTR(bind_type, 0, 4) = 'cert';
  63. DELETE FROM xms_bind_item
  64. WHERE target = :old.cert_id
  65. AND SUBSTR(bind_type, -4) = 'cert';
  66. end delete_cert;
  67. /
  68. prompt
  69. prompt Creating trigger DELETE_GROUP
  70. prompt =============================
  71. prompt
  72. create or replace trigger xms.delete_group
  73. after delete on xms_user_group
  74. for each row
  75. declare
  76. -- local variables here
  77. begin
  78. --删除关联表数据
  79. DELETE FROM xms_bind_item
  80. WHERE source = :old.group_id
  81. AND SUBSTR(bind_type, 0, 5) = 'group';
  82. DELETE FROM xms_bind_item
  83. WHERE target = :old.group_id
  84. AND SUBSTR(bind_type, -5) = 'group';
  85. end delete_group;
  86. /
  87. prompt
  88. prompt Creating trigger DELETE_ORG
  89. prompt ===========================
  90. prompt
  91. create or replace trigger xms.delete_org
  92. after delete on xms_user_org
  93. for each row
  94. declare
  95. -- local variables here
  96. begin
  97. --删除关联表数据
  98. DELETE FROM xms_bind_item
  99. WHERE source = :old.org_id
  100. AND SUBSTR(bind_type, 0, 3) = 'org';
  101. DELETE FROM xms_bind_item
  102. WHERE target = :old.org_id
  103. AND SUBSTR(bind_type, -3) = 'org';
  104. end delete_org;
  105. /
  106. prompt
  107. prompt Creating trigger DELETE_RES
  108. prompt ===========================
  109. prompt
  110. create or replace trigger xms.delete_res
  111. after delete on xms_app_res
  112. for each row
  113. declare
  114. -- local variables here
  115. begin
  116. --删除关联表数据
  117. DELETE FROM xms_bind_item
  118. WHERE source = :old.res_id
  119. AND SUBSTR(bind_type, 0, 3) = 'res';
  120. DELETE FROM xms_bind_item
  121. WHERE target = :old.res_id
  122. AND SUBSTR(bind_type, -3) = 'res';
  123. end delete_res;
  124. /
  125. prompt
  126. prompt Creating trigger DELETE_ROLE
  127. prompt ============================
  128. prompt
  129. create or replace trigger xms.delete_role
  130. after delete on xms_app_role
  131. for each row
  132. declare
  133. -- local variables here
  134. begin
  135. --删除关联表数据
  136. DELETE FROM xms_bind_item
  137. WHERE source = :old.role_id
  138. AND SUBSTR(bind_type, 0, 4) = 'role';
  139. DELETE FROM xms_bind_item
  140. WHERE target = :old.role_id
  141. AND SUBSTR(bind_type, -4) = 'role';
  142. end delete_role;
  143. /
  144. prompt
  145. prompt Creating trigger DELETE_USER
  146. prompt ============================
  147. prompt
  148. create or replace trigger xms.delete_user
  149. after delete on xms_user_info
  150. for each row
  151. declare
  152. -- local variables here
  153. begin
  154. --1.删除帐号关联
  155. DELETE FROM xms_user_acct WHERE user_id = :old.user_id;
  156. --2.删除证书关联
  157. DELETE FROM xms_user_cert WHERE user_id = :old.user_id;
  158. --3.删除凭证关联
  159. DELETE FROM xms_user_register_cred WHERE user_id = :old.user_id;
  160. --删除关联表数据
  161. DELETE FROM xms_bind_item
  162. WHERE source = :old.user_id
  163. AND SUBSTR(bind_type, 0, 4) = 'user';
  164. DELETE FROM xms_bind_item
  165. WHERE target = :old.user_id
  166. AND SUBSTR(bind_type, -4) = 'user';
  167. end delete_user;
  168. /
  169. spool off