Class PostgresSequenceColumnValueGenerator

java.lang.Object
org.litebridgedb.db.spi.generator.SequenceColumnValueGenerator
org.litebridgedb.db.postgres.PostgresSequenceColumnValueGenerator
All Implemented Interfaces:
ColumnValueGenerator

public class PostgresSequenceColumnValueGenerator extends SequenceColumnValueGenerator
Implementation of SequenceColumnValueGenerator for PostgreSQL databases.

This class generates SQL fragments to retrieve the next value from a Postgres sequence when used in SQL statements like INSERT or UPDATE.

  • Constructor Details

    • PostgresSequenceColumnValueGenerator

      public PostgresSequenceColumnValueGenerator(String sequence)
  • Method Details

    • generate

      public String generate(ColumnMetaData columnMetaData)
      Generate a SQL fragment to retrieve the next value from a sequence for direct use in an INSERT or UPDATE statement, e.g. to generate "INSERT INTO LB.ACCOUNT(ACCOUNT_ID, ACCOUNT_NAME) VALUES (nextval('sequence_name'), ?)", this method returns "nextval('sequence_name')".
      Specified by:
      generate in interface ColumnValueGenerator
      Specified by:
      generate in class SequenceColumnValueGenerator
      Parameters:
      columnMetaData - Column to generate a value for
      Returns:
      a formatted SQL string representing the next sequence value for direct insertion