diff --git a/sqlTranslate/.idea/workspace.xml b/sqlTranslate/.idea/workspace.xml index 3306e3462..f7353ec4e 100644 --- a/sqlTranslate/.idea/workspace.xml +++ b/sqlTranslate/.idea/workspace.xml @@ -4,20 +4,10 @@ - @@ -498,7 +487,8 @@ - diff --git a/sqlTranslate/src/main/java/Document/Todolist b/sqlTranslate/src/main/java/Document/Todolist index d85fae2ee..ec2f584ca 100644 --- a/sqlTranslate/src/main/java/Document/Todolist +++ b/sqlTranslate/src/main/java/Document/Todolist @@ -13,7 +13,7 @@ Operation  while... loop... end loop 1  for ... in () loop end loop 1  continue、exit 1 - return *** + return 1  exception 1  commit、rollback、execute 1  alter table 1 @@ -22,6 +22,6 @@ Operation Object  table 1  view 1 - function *** + function 1  procedure 1 - trigger **** \ No newline at end of file + trigger 1 \ No newline at end of file diff --git a/sqlTranslate/src/main/java/Document/Trigger in Oracle b/sqlTranslate/src/main/java/Document/Trigger in Oracle new file mode 100644 index 000000000..4706ae1d2 --- /dev/null +++ b/sqlTranslate/src/main/java/Document/Trigger in Oracle @@ -0,0 +1,17 @@ +CREATE OR REPLACE TRIGGER trigger_name +BEFORE | AFTER | INSTEAD OF -- OpenGauss does not support INSTEAD OF +{ INSERT | UPDATE | DELETE } +ON table_name +[REFERENCING NEW AS new OLD AS old] -- OpenGauss does not support this +FOR EACH ROW +WHEN (condition) +BEGIN + -- trigger body +END; + +Example: CREATE OR REPLACE TRIGGER log_insert + BEFORE INSERT ON employees + FOR EACH ROW + BEGIN + INSERT INTO audit_log (action, employee_id) VALUES ('INSERT', :NEW.id); + END; \ No newline at end of file