質問編集履歴

2

気づいたことを追記

2019/11/14 08:21

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -72,6 +72,8 @@
72
72
 
73
73
  END;
74
74
 
75
+ ```
75
76
 
76
77
 
78
+
77
- ```
79
+ 書いてて気づきましたが、returnできないのであれば、IF文の条件に入らない時だけ、下のINSERTを実行するように条件分岐すれば解決ですかね…

1

元のオラクルのトリガーを追記

2019/11/14 08:21

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -23,3 +23,55 @@
23
23
 
24
24
 
25
25
  ```
26
+
27
+
28
+
29
+ 元となるORACLEのトリガー文は下記のとおりです。
30
+
31
+ ```SQL
32
+
33
+ CREATE
34
+
35
+ TRIGGER TRG_XXX AFTER INSERT ON TABLE_A FOR EACH ROW
36
+
37
+ DECLARE
38
+
39
+ TMP_COUNT NUMBER;
40
+
41
+ BEGIN
42
+
43
+
44
+
45
+ SELECT COUNT(*) INTO TMP_COUNT FROM TABLE_B WHERE CD = NVL(:new.XXX_CD,'0000') AND CD2 = NVL(:new.ZZZ_CD,'0000');
46
+
47
+
48
+
49
+ IF TMP_COUNT <> 0 THEN
50
+
51
+ RETURN;
52
+
53
+ END IF;
54
+
55
+
56
+
57
+
58
+
59
+ INSERT INTO T_BUMON(
60
+
61
+ CD
62
+
63
+ ,CD2
64
+
65
+ )VALUES(
66
+
67
+ NVL(:new.XXX_CD,'0000')
68
+
69
+ ,NVL(:new.ZZZ_CD,'0000')
70
+
71
+ );
72
+
73
+ END;
74
+
75
+
76
+
77
+ ```