Class DmlStatement

java.lang.Object
org.jumpmind.db.sql.DmlStatement
Direct Known Subclasses:
AseDmlStatement, CassandraDMLStatement, HbaseDmlStatement, MsSqlDmlStatement, MySqlDmlStatement, OracleDmlStatement, PostgreSqlDmlStatement, RedshiftDmlStatement, SqlAnywhereDmlStatement, SqliteDmlStatement

public class DmlStatement extends Object
Builds a SQL DML statement
  • Field Details

    • QUESTION_MARK

      protected static final String QUESTION_MARK
      See Also:
    • catalogName

      protected String catalogName
    • schemaName

      protected String schemaName
    • tableName

      protected String tableName
    • dmlType

      protected DmlStatement.DmlType dmlType
    • sql

      protected String sql
    • namedParameters

      protected boolean namedParameters
    • types

      protected int[] types
    • quote

      protected String quote
    • databaseInfo

      protected DatabaseInfo databaseInfo
    • keys

      protected Column[] keys
    • columns

      protected Column[] columns
    • nullKeyValues

      protected boolean[] nullKeyValues
    • textColumnExpression

      protected String textColumnExpression
  • Constructor Details

  • Method Details

    • init

      protected final void init(DmlStatement.DmlType type, String catalogName, String schemaName, String tableName, Column[] keysColumns, Column[] columns, boolean[] nullKeyValues, DatabaseInfo databaseInfo, boolean useQuotedIdentifiers, String textColumnExpression, boolean namedParameters)
    • buildTypes

      protected int[] buildTypes(Column[] keys, Column[] columns, boolean isDateOverrideToTimestamp)
    • getTypeCode

      protected int getTypeCode(Column column, boolean isDateOverrideToTimestamp)
    • buildTypes

      protected int[] buildTypes(Column[] columns, boolean isDateOverrideToTimestamp)
    • buildInsertSql

      protected String buildInsertSql(String tableName, Column[] keys, Column[] columns)
    • buildUpsertSql

      protected String buildUpsertSql(String tableName, Column[] keyColumns, Column[] columns)
    • buildUpdateSql

      protected String buildUpdateSql(String tableName, Column[] keyColumns, Column[] columns)
    • buildDeleteSql

      protected String buildDeleteSql(String tableName, Column[] keyColumns)
    • buildFromSql

      protected String buildFromSql(String tableName, Column[] keyColumns)
    • buildWhereSql

      protected String buildWhereSql(String tableName, Column[] keyColumns)
    • buildCountSql

      protected String buildCountSql(String tableName, Column[] keyColumns)
    • buildSelectSql

      protected String buildSelectSql(String tableName, Column[] keyColumns, Column[] columns)
    • buildSelectSqlAll

      protected String buildSelectSqlAll(String tableName, Column[] keyColumns, Column[] columns)
    • appendColumnsEquals

      protected void appendColumnsEquals(StringBuilder sql, Column[] columns, String separator)
    • appendColumnsEquals

      protected void appendColumnsEquals(StringBuilder sql, Column[] columns, boolean[] nullColumns, String separator)
    • appendColumnEquals

      protected void appendColumnEquals(StringBuilder sql, Column column)
    • appendColumns

      protected int appendColumns(StringBuilder sql, Column[] columns, boolean select)
    • appendColumnNameForSql

      protected void appendColumnNameForSql(StringBuilder sql, Column column, boolean select)
    • appendColumnParameters

      protected void appendColumnParameters(StringBuilder sql, Column[] columns)
    • appendColumnParameter

      protected void appendColumnParameter(StringBuilder sql, Column column)
    • getColumnsSql

      public String getColumnsSql(Column[] columns)
    • getSql

      public String getSql()
    • getSql

      public String getSql(boolean allowIgnoreOnConflict)
    • getDmlType

      public DmlStatement.DmlType getDmlType()
    • getTypes

      public int[] getTypes()
    • getColumns

      public Column[] getColumns()
    • getColumnKeyMetaData

      public Column[] getColumnKeyMetaData()
    • getMetaData

      public Column[] getMetaData()
    • getKeys

      public Column[] getKeys()
    • getValueArray

      public <T> T[] getValueArray(T[] columnValues, T[] keyValues)
    • getValueArray

      public Object[] getValueArray(Map<String,Object> params)
    • buildDynamicSql

      public String buildDynamicSql(BinaryEncoding encoding, Row row, boolean useVariableDates, boolean useJdbcTimestampFormat, Column[] columns)
    • buildDynamicDeleteSql

      public String buildDynamicDeleteSql(BinaryEncoding encoding, Row row, boolean useVariableDates, boolean useJdbcTimestampFormat)
    • buildDynamicSql

      public String buildDynamicSql(BinaryEncoding encoding, Row row, boolean useVariableDates, boolean useJdbcTimestampFormat)
    • isUpsertSupported

      public boolean isUpsertSupported()
    • isNamedParameters

      public boolean isNamedParameters()
    • getLookupKeyData

      public String[] getLookupKeyData(Map<String,String> lookupDataMap)
    • escapeText

      protected String escapeText(String value)
    • updateCteExpression

      public void updateCteExpression(String value)
    • updateCteExpression

      public static String updateCteExpression(String sql, String value)
    • getNullKeyValues

      public static boolean[] getNullKeyValues(Object[] values)