oracle、mysql、sqlserver、postgresql根据触发器名获取触发器的DDL
时间: 2023-07-10 14:21:17 浏览: 140
SQLServer EVENTDATA()函数来获取DDL 触发器信息
1. Oracle:
在Oracle中,可以使用以下语句获取指定触发器的DDL:
```
SELECT DBMS_METADATA.GET_DDL('TRIGGER', '<TRIGGER_NAME>', '<OWNER>') FROM DUAL;
```
其中,`<TRIGGER_NAME>`是指要获取DDL的触发器的名称,`<OWNER>`是指触发器所属的用户或模式。
2. MySQL:
在MySQL中,可以使用以下语句获取指定触发器的DDL:
```
SHOW CREATE TRIGGER `<TRIGGER_NAME>`;
```
其中,`<TRIGGER_NAME>`是指要获取DDL的触发器的名称。
3. SQL Server:
在SQL Server中,可以使用以下语句获取指定触发器的DDL:
```
SELECT OBJECT_DEFINITION(OBJECT_ID('<TRIGGER_SCHEMA>.<TRIGGER_NAME>')) AS [TRIGGER_DEFINITION];
```
其中,`<TRIGGER_SCHEMA>`是指触发器所属的模式,`<TRIGGER_NAME>`是指要获取DDL的触发器的名称。
4. PostgreSQL:
在PostgreSQL中,可以使用以下语句获取指定触发器的DDL:
```
SELECT PG_GET_TRIGGERDEF('<TRIGGER_NAME>', '<TABLE_NAME>', '<SCHEMA_NAME>');
```
其中,`<TRIGGER_NAME>`是指要获取DDL的触发器的名称,`<TABLE_NAME>`是指触发器所作用的表的名称,`<SCHEMA_NAME>`是指触发器所属的模式。
阅读全文