1 | public class PostgresTableTriggerExtractorImpl implements ITableTriggerExtractor {↵ | | 1 | public class SybaseTableTriggerExtractorImpl implements ITableTriggerExtractor {↵
|
|
2 | /** Logger for this class */↵ | | 2 | /** Logger for this class */↵
|
3 | private final static ILogger s_log = ↵ | | 3 | private final static ILogger s_log = ↵
|
4 | LoggerController.createLogger(PostgresTableTriggerExtractorImpl.class);↵ | | 4 | LoggerController.createLogger(SybaseTableTriggerExtractorImpl.class);↵
|
5 | ↵ | | 5 | ↵
|
6 | /** the query that extracts the trigger names for a given table */↵ | | 6 | /** The query that finds the triggers for a given table */↵
|
7 | private static final String triggerQuery = ↵ | | 7 | private static ↵
|
8 | "sel↵ | | 8 | String query = ↵
|
| | | 9 | "SELECT triggers.name " +↵
|
9 | ect tr.tgname " +↵ | | 10 | "FROM sysobjects tables , sysobjects triggers " +↵
|
10 | "from pg_catalog.pg_trigger tr, pg_catalog.pg_proc p, " +↵ | | 11 | "↵
|
11 | " pg_class c, pg_namespace n " +↵ | | 12 | where triggers.type = 'TR' " +↵
|
| | | 13 | "and triggers.deltrig = tables.id " +↵
|
| | | 14 | "and tables.loginame = ? " +↵
|
| | | 15 | "and tables.name = ? ";↵
|
12 | ↵ | | 16 | ↵
|
13 | "where tr.tgfoid↵ | | 17 | // trigger source↵
|
| | | 18 | // "SELECT text " +↵
|
14 | = p.oid " +↵ | | 19 | // "FROM dbo.sysobjects " +↵
|
15 | "and tr.tgrelid = c.oid " +↵ | | 20 | // "inner join syscomments on syscomments.id = sysobjects.id " +↵
|
16 | "and c.relnamespace = n.oid " +↵ | | 21 | // "where loginame = ? " +↵
|
17 | "and n.nspname = ? " +↵ | | 22 | // "and name = ? " +↵
|
18 | "and c.relname = ? ";↵ | | 23 | // "and type = 'TR' "; ↵
|
19 | ↵ | | 24 | ↵
|
20 | ↵ | | 25 | ↵
|
21 | /**↵ | | 26 | /**↵
|
22 | * @see net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.expanders.ITableTriggerExtractor#bindParamters(java.sql.PreparedStatement, net.sourceforge.squirrel_sql.fw.sql.IDatabaseObjectInfo)↵ | | 27 | * @see net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.expanders.ITableTriggerExtractor#bindParamters(java.sql.PreparedStatement, net.sourceforge.squirrel_sql.fw.sql.IDatabaseObjectInfo)↵
|
23 | */↵ | | 28 | */↵
|
24 | public void bindParamters(PreparedStatement pstmt, IDatabaseObjectInfo dbo)↵ | | 29 | public void bindParamters(PreparedStatement pstmt, IDatabaseObjectInfo dbo) ↵
|
25 | throws SQLException ↵ | | 30 | throws SQLException ↵
|
26 | {↵ | | 31 | {↵
|
27 | if (s_log.isDebugEnabled()) {↵ | | 32 | if (s_log.isDebugEnabled()) {↵
|
28 | s_log.debug("Binding schema name "+dbo.getSchemaName()+↵ | | 33 | s_log.debug("Binding catalog name "+dbo.getCatalogName()+↵
|
29 | " as first bind value");↵ | | 34 | " as first bind value"); ↵
|
30 | s_log.debug("Binding table name "+dbo.getSimpleName()+↵ | | 35 | s_log.debug("Binding table name "+dbo.getSimpleName()+↵
|
31 | " as second bind value"); ↵ | | 36 | " as second bind value");↵
|
32 | } ↵ | | 37 | } ↵
|
33 | pstmt.setString(1, dbo.getSchemaName());↵ | | 38 | pstmt.setString(1, dbo.getCatalogName());↵
|
34 | pstmt.setString(2, dbo.getSimpleName());↵ | | 39 | pstmt.setString(2, dbo.getSimpleName());↵
|
| | | 40 | ↵
|
35 | }↵ | | 41 | }↵
|
|
36 | /**↵ | | 42 | /**↵
|
37 | * @see net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.expanders.ITableTriggerExtractor#getTableTriggerQuery()↵ | | 43 | * @see net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.expanders.ITableTriggerExtractor#getTableTriggerQuery()↵
|
38 | */↵ | | 44 | */↵
|
39 | public String getTableTriggerQuery() {↵ | | 45 | public String getTableTriggerQuery() {↵
|
40 | return triggerQuery | | 46 | return query
|