Class GenericDatabaseAdapter

java.lang.Object
org.apache.nifi.processors.standard.db.impl.GenericDatabaseAdapter
All Implemented Interfaces:
DatabaseAdapter
Direct Known Subclasses:
DatabaseDialectServiceDatabaseAdapter, MySQLDatabaseAdapter, PostgreSQLDatabaseAdapter

public class GenericDatabaseAdapter extends Object implements DatabaseAdapter
A generic database adapter that generates ANSI SQL.
  • Constructor Details

    • GenericDatabaseAdapter

      public GenericDatabaseAdapter()
  • Method Details

    • getName

      public String getName()
      Specified by:
      getName in interface DatabaseAdapter
    • getDescription

      public String getDescription()
      Specified by:
      getDescription in interface DatabaseAdapter
    • getSelectStatement

      public String getSelectStatement(String tableName, String columnNames, String whereClause, String orderByClause, Long limit, Long offset)
      Description copied from interface: DatabaseAdapter
      Returns a SQL SELECT statement with the given clauses applied.
      Specified by:
      getSelectStatement in interface DatabaseAdapter
      Parameters:
      tableName - The name of the table to fetch rows from
      columnNames - The names of the columns to fetch from the table
      whereClause - The filter to apply to the statement. This should not include the WHERE keyword
      orderByClause - The columns/clause used for ordering the result rows. This should not include the ORDER BY keywords
      limit - The value for the LIMIT clause (i.e. the number of rows to return)
      offset - The value for the OFFSET clause (i.e. the number of rows to skip)
      Returns:
      A String containing a SQL SELECT statement with the given clauses applied
    • getSelectStatement

      public String getSelectStatement(String tableName, String columnNames, String whereClause, String orderByClause, Long limit, Long offset, String columnForPartitioning)
      Description copied from interface: DatabaseAdapter
      Returns a SQL SELECT statement with the given clauses applied. Note that if this method is overridden, the other overloaded methods need to be overridden as well, to call this method with columnForPartitioning = false
      Specified by:
      getSelectStatement in interface DatabaseAdapter
      Parameters:
      tableName - The name of the table to fetch rows from
      columnNames - The names of the columns to fetch from the table
      whereClause - The filter to apply to the statement. This should not include the WHERE keyword
      orderByClause - The columns/clause used for ordering the result rows. This should not include the ORDER BY keywords
      limit - The value for the LIMIT clause (i.e. the number of rows to return)
      offset - The value for the OFFSET clause (i.e. the number of rows to skip)
      columnForPartitioning - The (optional) column name that, if provided, the limit and offset values are based on values from the column itself (rather than the row number)
      Returns:
      A String containing a SQL SELECT statement with the given clauses applied