Skip to content

Commit

Permalink
0004826: Raima DDL Reader fails to read triggers for specific table
Browse files Browse the repository at this point in the history
# Conflicts:
#	symmetric-jdbc/src/main/java/org/jumpmind/db/platform/raima/RaimaDdlReader.java
  • Loading branch information
Philip Marzullo committed Dec 3, 2021
1 parent beb40a7 commit afc939b
Showing 1 changed file with 18 additions and 16 deletions.
Expand Up @@ -109,31 +109,33 @@ public List<Trigger> getTriggers(final String catalog, final String schema,
log.debug("Reading triggers for: " + tableName);
JdbcSqlTemplate sqlTemplate = (JdbcSqlTemplate) platform
.getSqlTemplate();

String sql = "SELECT "
+ "TRIGGERNAME, "
+ "SCHEMA, "
+ "TRIGGER_TYPE, "
+ "TABLENAME, "
+ "TRIG.* "
+ "FROM SYSTEM.TRIGGERS AS TRIG "
+ "WHERE TABLENAME=? and SCHEMA=? ;";
+ "schemaname, "
+ "tabname, "
+ "name, "
+ "event, "
+ "trig.* "
+ "FROM sys_trigger trig "
+ "WHERE tabname = ? AND schemaname = ?";
triggers = sqlTemplate.query(sql, new ISqlRowMapper<Trigger>() {
public Trigger mapRow(Row row) {
Trigger trigger = new Trigger();
trigger.setName(row.getString("TRIGGERNAME"));
trigger.setSchemaName(row.getString("SCHEMA"));
trigger.setTableName(row.getString("TABLENAME"));
trigger.setName(row.getString("NAME"));
trigger.setSchemaName(row.getString("SCHEMANAME"));
trigger.setTableName(row.getString("TABNAME"));
trigger.setEnabled(true);
String triggerType = row.getString("TRIGGER_TYPE");
if (triggerType.equals("DELETE")
|| triggerType.equals("INSERT")
|| triggerType.equals("UPDATE")) {
trigger.setTriggerType(TriggerType.valueOf(triggerType));
String triggerType = row.getString("EVENT");
if (triggerType.equalsIgnoreCase("DELETE")
|| triggerType.equalsIgnoreCase("INSERT")
|| triggerType.equalsIgnoreCase("UPDATE")) {
trigger.setTriggerType(TriggerType.valueOf(triggerType.toUpperCase()));
}
trigger.setMetaData(row);
return trigger;
}
}, tableName, catalog);
}, tableName, schema);

return triggers;
}

Expand Down

0 comments on commit afc939b

Please sign in to comment.