forked from opengaussexamples/examples
add trigger document
This commit is contained in:
parent
6afc2b1085
commit
106f9e2ada
|
|
@ -4,20 +4,10 @@
|
|||
<option name="autoReloadType" value="SELECTIVE" />
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="d8d12963-4777-48e3-9669-309cf5e41d60" name="更改" comment="add ast classes of function">
|
||||
<list default="true" id="d8d12963-4777-48e3-9669-309cf5e41d60" name="更改" comment="add function">
|
||||
<change afterPath="$PROJECT_DIR$/src/main/java/Document/Trigger in Oracle" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Generator/OpenGaussGenerator.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Generator/OpenGaussGenerator.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Interface/ColumnType.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Interface/DataType.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Lexer/OracleLexer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Lexer/OracleLexer.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Main.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Main.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Parser/AST/AlterTable/AlterAddColumnNode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/AlterTable/AlterAddColumnNode.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Parser/AST/AlterTable/AlterModifyColumnNode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/AlterTable/AlterModifyColumnNode.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Parser/AST/CreateTable/ColumnNode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/CreateTable/ColumnNode.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Parser/AST/Function/FunctionColumnNode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/Function/FunctionColumnNode.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Parser/AST/Function/FunctionNameNode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/Function/FunctionNameNode.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Parser/AST/Function/FunctionRetDefNode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/Function/FunctionRetDefNode.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Parser/AST/Procedure/ProcedureColumnNode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/Procedure/ProcedureColumnNode.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Parser/OracleParser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Parser/OracleParser.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/Document/Todolist" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Document/Todolist" afterDir="false" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
|
|
@ -115,13 +105,6 @@
|
|||
<option name="presentableId" value="Default" />
|
||||
<updated>1723106789329</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00036" summary="revise">
|
||||
<created>1726066806993</created>
|
||||
<option name="number" value="00036" />
|
||||
<option name="presentableId" value="LOCAL-00036" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1726066806993</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00037" summary="add join pattern">
|
||||
<created>1726068883795</created>
|
||||
<option name="number" value="00037" />
|
||||
|
|
@ -458,7 +441,14 @@
|
|||
<option name="project" value="LOCAL" />
|
||||
<updated>1726583392370</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="85" />
|
||||
<task id="LOCAL-00085" summary="add function">
|
||||
<created>1726587379509</created>
|
||||
<option name="number" value="00085" />
|
||||
<option name="presentableId" value="LOCAL-00085" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1726587379509</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="86" />
|
||||
<servers />
|
||||
</component>
|
||||
<component name="Vcs.Log.Tabs.Properties">
|
||||
|
|
@ -473,7 +463,6 @@
|
|||
</option>
|
||||
</component>
|
||||
<component name="VcsManagerConfiguration">
|
||||
<MESSAGE value="add alter table parser" />
|
||||
<MESSAGE value="add alter" />
|
||||
<MESSAGE value="fix some bugs" />
|
||||
<MESSAGE value="add view document" />
|
||||
|
|
@ -498,7 +487,8 @@
|
|||
<MESSAGE value="add document of rollback, commot, execute" />
|
||||
<MESSAGE value="add document of function" />
|
||||
<MESSAGE value="add ast classes of function" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="add ast classes of function" />
|
||||
<MESSAGE value="add function" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="add function" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<watches-manager>
|
||||
|
|
|
|||
|
|
@ -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 ****
|
||||
trigger 1
|
||||
|
|
@ -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;
|
||||
Loading…
Reference in New Issue