# Mode The compatibility modes. There is a fixed set of modes (for example PostgreSQL, MySQL). Each mode has different settings.
Methods
static Mode | getInstance(String name) Get the mode with the given name.
static Mode | getInstance(String name) Get the mode with the given name. Parameters: name - the name of the mode Returns: the mode object
static Mode | getRegular()
static Mode | getRegular()
Mode.ModeEnum | getEnum()
Mode.ModeEnum | getEnum()
String | getName()
String | getName()
String | toString()
String | toString()
Fields
static boolean | aliasColumnName
static boolean | allowAffinityKey
static boolean | allowDB2TimestampFormat
static boolean | allowPlusForStringConcat
static boolean | charToBinaryInUtf8
static boolean | convertInsertNullToZero
static boolean | convertOnlyToSmallerScale
static boolean | dateTimeValueWithinTransaction
static Set | disallowedTypes
static boolean | discardWithTableHints
static boolean | indexDefinitionInCreateTable
static boolean | isolationLevelInSelectOrInsertStatement
static boolean | logIsLogBase10
static boolean | lowerCaseIdentifiers
static boolean | nullConcatIsNull
static boolean | onDuplicateKeyUpdate
static boolean | padFixedLengthStrings
static boolean | prohibitEmptyInPredicate
static boolean | regexpReplaceBackslashReferences
static boolean | serialColumnIsNotPK
static boolean | squareBracketQuotedNames
static boolean | supportPoundSymbolForColumnNames
static Pattern | supportedClientInfoPropertiesRegEx
static boolean | swapConvertFunctionParameters
static boolean | sysDummy1
static boolean | systemColumns
static boolean | treatEmptyStringsAsNull
static HashMap | typeByNameMap
static Mode.UniqueIndexNullsHandling | uniqueIndexNullsHandling
static boolean | useIdentityAsAutoIncrement
#### aliasColumnName When enabled, aliased columns (as in SELECT ID AS I FROM TEST) return the alias (I in this case) in ResultSetMetaData.getColumnName() and 'null' in getTableName(). If disabled, the real column name (ID in this case) and table name is returned. #### allowAffinityKey Whether AFFINITY KEY keywords are supported. #### allowDB2TimestampFormat Whether DB2 TIMESTAMP formats are allowed. #### allowPlusForStringConcat Text can be concatenated using '+'. #### charToBinaryInUtf8 Convert (VAR)CHAR to VAR(BINARY) and vice versa with UTF-8 encoding instead of HEX. #### convertInsertNullToZero When inserting data, if a column is defined to be NOT NULL and NULL is inserted, then a 0 (or empty string, or the current timestamp for timestamp columns) value is used. Usually, this operation is not allowed and an exception is thrown. #### convertOnlyToSmallerScale When converting the scale of decimal data, the number is only converted if the new scale is smaller than the current scale. Usually, the scale is converted and 0s are added if required. #### dateTimeValueWithinTransaction If {@code true}, datetime value function return the same value within a transaction, if {@code false} datetime value functions return the same value within a command. #### disallowedTypes An optional Set of hidden/disallowed column types. Certain DBMSs don't support all column types provided by H2, such as "NUMBER" when using PostgreSQL mode. #### discardWithTableHints Discard SQLServer table hints (e.g. "SELECT * FROM table WITH (NOLOCK)") #### indexDefinitionInCreateTable Creating indexes in the CREATE TABLE statement is allowed using `INDEX(..)` or `KEY(..)`. Example: `create table test(id int primary key, name varchar(255), key idx_name(name));` #### isolationLevelInSelectOrInsertStatement can set the isolation level using WITH {RR|RS|CS|UR} #### logIsLogBase10 The function LOG() uses base 10 instead of E. #### lowerCaseIdentifiers Meta data calls return identifiers in lower case. #### nullConcatIsNull Concatenation with NULL results in NULL. Usually, NULL is treated as an empty string if only one of the operands is NULL, and NULL is only returned if both operands are NULL. #### onDuplicateKeyUpdate MySQL style INSERT ... ON DUPLICATE KEY UPDATE ... and INSERT IGNORE #### padFixedLengthStrings Whether to right-pad fixed strings with spaces. #### prohibitEmptyInPredicate Whether an empty list as in "NAME IN()" results in a syntax error. #### regexpReplaceBackslashReferences The function REGEXP_REPLACE() uses \ for back-references. #### serialColumnIsNotPK SERIAL and BIGSERIAL columns are not automatically primary keys. #### squareBracketQuotedNames Identifiers may be quoted using square brackets as in [Test]. #### supportPoundSymbolForColumnNames Support the # for column names #### supportedClientInfoPropertiesRegEx Pattern describing the keys the java.sql.Connection.setClientInfo() method accepts. #### swapConvertFunctionParameters Swap the parameters of the CONVERT function. #### sysDummy1 Support the pseudo-table SYSIBM.SYSDUMMY1. #### systemColumns The system columns 'CTID' and 'OID' are supported. #### treatEmptyStringsAsNull Empty strings are treated like NULL values. Useful for Oracle emulation. #### typeByNameMap Custom mappings from type names to data types. #### uniqueIndexNullsHandling Determines how rows with {@code NULL} values in indexed columns are handled in unique indexes. #### useIdentityAsAutoIncrement Use "IDENTITY" as an alias for "auto_increment" (SQLServer style)