public class DB2DatabaseMeta extends BaseDatabaseMeta implements DatabaseInterface
ATTRIBUTE_CLUSTER_DBNAME_PREFIX, ATTRIBUTE_CLUSTER_HOSTNAME_PREFIX, ATTRIBUTE_CLUSTER_PASSWORD_PREFIX, ATTRIBUTE_CLUSTER_PORT_PREFIX, ATTRIBUTE_CLUSTER_USERNAME_PREFIX, ATTRIBUTE_FORCE_IDENTIFIERS_TO_LOWERCASE, ATTRIBUTE_FORCE_IDENTIFIERS_TO_UPPERCASE, ATTRIBUTE_INITIAL_POOL_SIZE, ATTRIBUTE_IS_CLUSTERED, ATTRIBUTE_MAXIMUM_POOL_SIZE, ATTRIBUTE_MSSQL_DOUBLE_DECIMAL_SEPARATOR, ATTRIBUTE_POOLING_PARAMETER_PREFIX, ATTRIBUTE_PORT_NUMBER, ATTRIBUTE_PREFERRED_SCHEMA_NAME, ATTRIBUTE_PREFIX_EXTRA_OPTION, ATTRIBUTE_PRESERVE_RESERVED_WORD_CASE, ATTRIBUTE_QUOTE_ALL_FIELDS, ATTRIBUTE_SQL_CONNECT, ATTRIBUTE_SUPPORTS_BOOLEAN_DATA_TYPE, ATTRIBUTE_SUPPORTS_TIMESTAMP_DATA_TYPE, ATTRIBUTE_USE_POOLING, ATTRIBUTE_USE_RESULT_STREAMING, AUTOINCREMENT_SQL_FOR_BATCH_ID, poolingParameters, SELECT_COUNT_STATEMENT, SEQUENCE_FOR_BATCH_ID| Constructor and Description |
|---|
DB2DatabaseMeta() |
| Modifier and Type | Method and Description |
|---|---|
int[] |
getAccessTypeList()
Get the list of possible access types for a database.
|
String |
getAddColumnStatement(String tablename,
ValueMetaInterface v,
String tk,
boolean use_autoinc,
String pk,
boolean semicolon)
Generates the SQL statement to add a column to the specified table
|
int |
getDefaultDatabasePort() |
String |
getDriverClass()
Obtain the name of the JDBC driver class that we need to use!
|
String |
getDropColumnStatement(String tablename,
ValueMetaInterface v,
String tk,
boolean use_autoinc,
String pk,
boolean semicolon)
Generates the SQL statement to drop a column from the specified table
|
String |
getExtraOptionIndicator() |
String |
getFieldDefinition(ValueMetaInterface v,
String tk,
String pk,
boolean use_autoinc,
boolean add_fieldname,
boolean add_cr)
Describe a Value as a field in the database.
|
int |
getMaxVARCHARLength()
Get the maximum length of a text field (VARCHAR) for this database connection.
|
String |
getModifyColumnStatement(String tablename,
ValueMetaInterface v,
String tk,
boolean use_autoinc,
String pk,
boolean semicolon)
Generates the SQL statement to modify a column in the specified table
|
String[] |
getReservedWords() |
String |
getSQLCurrentSequenceValue(String sequenceName)
Get the current value of a database sequence
|
String |
getSQLInsertAutoIncUnknownDimensionRow(String schemaTable,
String keyField,
String versionField)
Get the SQL to insert a new empty unknown record in a dimension.
|
String |
getSQLListOfSequences() |
String |
getSQLLockTables(String[] tableNames) |
String |
getSQLNextSequenceValue(String sequenceName)
Get the SQL to get the next value of a sequence.
|
String |
getSQLSequenceExists(String sequenceName)
Check if a sequence exists.
|
String |
getSQLUnlockTables(String[] tableName) |
String |
getTruncateTableStatement(String tableName) |
String |
getURL(String hostname,
String port,
String databaseName) |
String[] |
getUsedLibraries() |
boolean |
isDisplaySizeTwiceThePrecision() |
boolean |
requiresCastToVariousForIsNull() |
boolean |
supportsBatchUpdates() |
boolean |
supportsGetBlob() |
boolean |
supportsNewLinesInSQL() |
boolean |
supportsSchemas() |
boolean |
supportsSequenceNoMaxValueOption() |
boolean |
supportsSequences() |
boolean |
supportsSetCharacterStream()
See if this database supports the setCharacterStream() method on a PreparedStatement.
|
addExtraOption, checkIndexExists, clone, customizeValueFromSQLType, generateColumnAlias, getAccessType, getAttributes, getBackwardsCompatibleSchemaTableCombination, getBackwardsCompatibleTable, getConnectionPoolingProperties, getConnectSQL, getCreateTableStatement, getDatabaseFactoryName, getDatabaseName, getDatabasePortNumberString, getDataTablespace, getDataTablespaceDDL, getDefaultOptions, getDisplayName, getEndQuote, getExtraOptions, getExtraOptionSeparator, getExtraOptionsHelpText, getExtraOptionValueSeparator, getFunctionAverage, getFunctionCount, getFunctionMaximum, getFunctionMinimum, getFunctionSum, getHostname, getIndexTablespace, getIndexTablespaceDDL, getInitialPoolSize, getLimitClause, getMaxColumnsInIndex, getMaximumPoolSize, getMaxTextFieldLength, getName, getNextBatchId, getNextBatchIdUsingAutoIncSQL, getNextBatchIdUsingLockTables, getNextBatchIdUsingSequence, getNotFoundTK, getObjectId, getPartitioningInformation, getPassword, getPluginId, getPluginName, getPreferredSchemaName, getSafeFieldname, getSchemaTableCombination, getSelectCountStatement, getSequenceNoMaxValueOption, getServername, getSQLColumnExists, getSQLListOfProcedures, getSQLListOfSchemas, getSQLQueryFields, getSqlScriptStatements, getSQLTableExists, getSQLValue, getStartQuote, getSynonymTypes, getTablespaceDDL, getTableTypes, getUsername, getValueFromResultSet, getViewTypes, getXulOverlayFile, isChanged, isDefaultingToUppercase, isExplorable, isFetchSizeSupported, isForcingIdentifiersToLowerCase, isForcingIdentifiersToUpperCase, isMySQLVariant, isPartitioned, isQuoteAllFields, isRequiringTransactionsOnQueries, isStreamingResults, isSystemTable, isUsingConnectionPool, isUsingDoubleDecimalAsSchemaTableSeparator, needsPlaceHolder, needsToLockAllTables, parseStatements, preserveReservedCase, quoteReservedWords, quoteSQLString, releaseSavepoint, requiresCreateTablePrimaryKeyAppend, setAccessType, setAttributes, setChanged, setConnectionPoolingProperties, setConnectSQL, setDatabaseName, setDatabasePortNumberString, setDataTablespace, setDisplayName, setForcingIdentifiersToLowerCase, setForcingIdentifiersToUpperCase, setHostname, setIndexTablespace, setInitialPoolSize, setMaximumPoolSize, setName, setObjectId, setPartitioned, setPartitioningInformation, setPassword, setPluginId, setPluginName, setPreferredSchemaName, setPreserveReservedCase, setQuoteAllFields, setServername, setStreamingResults, setSupportsBooleanDataType, setSupportsTimestampDataType, setUsername, setUsingConnectionPool, setUsingDoubleDecimalAsSchemaTableSeparator, supportsAutoGeneratedKeys, supportsAutoInc, supportsBitmapIndex, supportsBooleanDataType, supportsCatalogs, supportsEmptyTransactions, supportsErrorHandling, supportsErrorHandlingOnBatchUpdates, supportsFloatRoundingOnUpdate, supportsOptionsInURL, supportsPreparedStatementMetadataRetrieval, supportsRepository, supportsResultSetMetadataRetrievalOnly, supportsSetLong, supportsSetMaxRows, supportsSynonyms, supportsTimestampDataType, supportsTimeStampToDateConversion, supportsTransactions, supportsViews, useSafePoints, useSchemaNameForTableListequals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddExtraOption, checkIndexExists, clone, customizeValueFromSQLType, generateColumnAlias, getAccessType, getAttributes, getConnectionPoolingProperties, getConnectSQL, getCreateTableStatement, getDatabaseFactoryName, getDatabaseName, getDatabasePortNumberString, getDataTablespace, getDataTablespaceDDL, getDefaultOptions, getDisplayName, getEndQuote, getExtraOptions, getExtraOptionSeparator, getExtraOptionsHelpText, getExtraOptionValueSeparator, getFunctionAverage, getFunctionCount, getFunctionMaximum, getFunctionMinimum, getFunctionSum, getHostname, getIndexTablespace, getIndexTablespaceDDL, getInitialPoolSize, getLimitClause, getMaxColumnsInIndex, getMaximumPoolSize, getMaxTextFieldLength, getName, getNextBatchId, getNotFoundTK, getObjectId, getPartitioningInformation, getPassword, getPluginId, getPluginName, getPreferredSchemaName, getSafeFieldname, getSchemaTableCombination, getSelectCountStatement, getSequenceNoMaxValueOption, getServername, getSQLColumnExists, getSQLListOfProcedures, getSQLListOfSchemas, getSQLQueryFields, getSqlScriptStatements, getSQLTableExists, getSQLValue, getStartQuote, getSynonymTypes, getTableTypes, getUsername, getValueFromResultSet, getViewTypes, getXulOverlayFile, isChanged, isDefaultingToUppercase, isExplorable, isFetchSizeSupported, isForcingIdentifiersToLowerCase, isForcingIdentifiersToUpperCase, isMySQLVariant, isPartitioned, isQuoteAllFields, isRequiringTransactionsOnQueries, isStreamingResults, isSystemTable, isUsingConnectionPool, isUsingDoubleDecimalAsSchemaTableSeparator, needsPlaceHolder, needsToLockAllTables, parseStatements, preserveReservedCase, quoteReservedWords, quoteSQLString, releaseSavepoint, requiresCreateTablePrimaryKeyAppend, setAccessType, setAttributes, setChanged, setConnectionPoolingProperties, setConnectSQL, setDatabaseName, setDatabasePortNumberString, setDataTablespace, setDisplayName, setForcingIdentifiersToLowerCase, setForcingIdentifiersToUpperCase, setHostname, setIndexTablespace, setInitialPoolSize, setMaximumPoolSize, setName, setObjectId, setPartitioned, setPartitioningInformation, setPassword, setPluginId, setPluginName, setPreferredSchemaName, setPreserveReservedCase, setQuoteAllFields, setServername, setStreamingResults, setSupportsBooleanDataType, setSupportsTimestampDataType, setUsername, setUsingConnectionPool, setUsingDoubleDecimalAsSchemaTableSeparator, supportsAutoGeneratedKeys, supportsAutoInc, supportsBitmapIndex, supportsBooleanDataType, supportsCatalogs, supportsEmptyTransactions, supportsErrorHandling, supportsErrorHandlingOnBatchUpdates, supportsFloatRoundingOnUpdate, supportsOptionsInURL, supportsPreparedStatementMetadataRetrieval, supportsRepository, supportsResultSetMetadataRetrievalOnly, supportsSetLong, supportsSetMaxRows, supportsSynonyms, supportsTimestampDataType, supportsTimeStampToDateConversion, supportsTransactions, supportsViews, useSafePoints, useSchemaNameForTableListpublic int[] getAccessTypeList()
DatabaseInterfacegetAccessTypeList in interface DatabaseInterfacegetAccessTypeList in class BaseDatabaseMetapublic int getDefaultDatabasePort()
getDefaultDatabasePort in interface DatabaseInterfacegetDefaultDatabasePort in class BaseDatabaseMetapublic boolean supportsSetCharacterStream()
BaseDatabaseMetasupportsSetCharacterStream in interface DatabaseInterfacesupportsSetCharacterStream in class BaseDatabaseMetapublic String getDriverClass()
DatabaseInterfacegetDriverClass in interface DatabaseInterfacepublic String getURL(String hostname, String port, String databaseName)
getURL in interface DatabaseInterfacehostname - the hostnameport - the port as a stringdatabaseName - the database namepublic boolean supportsSchemas()
supportsSchemas in interface DatabaseInterfacesupportsSchemas in class BaseDatabaseMetapublic String getTruncateTableStatement(String tableName)
getTruncateTableStatement in interface DatabaseInterfacegetTruncateTableStatement in class BaseDatabaseMetatableName - The table to be truncated.public String getAddColumnStatement(String tablename, ValueMetaInterface v, String tk, boolean use_autoinc, String pk, boolean semicolon)
getAddColumnStatement in interface DatabaseInterfacetablename - The table to addv - The column defined as a valuetk - the name of the technical key fielduse_autoinc - whether or not this field uses auto incrementpk - the name of the primary key fieldsemicolon - whether or not to add a semi-colon behind the statement.public String getDropColumnStatement(String tablename, ValueMetaInterface v, String tk, boolean use_autoinc, String pk, boolean semicolon)
getDropColumnStatement in interface DatabaseInterfacegetDropColumnStatement in class BaseDatabaseMetatablename - The table to addv - The column defined as a valuetk - the name of the technical key fielduse_autoinc - whether or not this field uses auto incrementpk - the name of the primary key fieldsemicolon - whether or not to add a semi-colon behind the statement.public String getModifyColumnStatement(String tablename, ValueMetaInterface v, String tk, boolean use_autoinc, String pk, boolean semicolon)
getModifyColumnStatement in interface DatabaseInterfacetablename - The table to addv - The column defined as a valuetk - the name of the technical key fielduse_autoinc - whether or not this field uses auto incrementpk - the name of the primary key fieldsemicolon - whether or not to add a semi-colon behind the statement.public String getFieldDefinition(ValueMetaInterface v, String tk, String pk, boolean use_autoinc, boolean add_fieldname, boolean add_cr)
DatabaseInterfacegetFieldDefinition in interface DatabaseInterfacev - The value to describetk - The field that's going to be the technical keypk - The field that's going to be the primary keyuse_autoinc - Use autoincrement or notadd_fieldname - Add the fieldname to the definition or notadd_cr - Add a cariage return at the end of the definition or not.public String[] getReservedWords()
getReservedWords in interface DatabaseInterfacegetReservedWords in class BaseDatabaseMetapublic String getSQLLockTables(String[] tableNames)
getSQLLockTables in interface DatabaseInterfacegetSQLLockTables in class BaseDatabaseMetatableNames - The names of the tables to lockpublic String getSQLUnlockTables(String[] tableName)
getSQLUnlockTables in interface DatabaseInterfacegetSQLUnlockTables in class BaseDatabaseMetatableName - The names of the tables to unlockpublic int getMaxVARCHARLength()
getMaxVARCHARLength in interface DatabaseInterfacegetMaxVARCHARLength in class BaseDatabaseMetapublic boolean supportsBatchUpdates()
supportsBatchUpdates in interface DatabaseInterfacesupportsBatchUpdates in class BaseDatabaseMetapublic boolean supportsGetBlob()
supportsGetBlob in interface DatabaseInterfacesupportsGetBlob in class BaseDatabaseMetapublic String[] getUsedLibraries()
getUsedLibraries in interface DatabaseInterfacepublic boolean supportsSequences()
supportsSequences in interface DatabaseInterfacesupportsSequences in class BaseDatabaseMetapublic String getSQLListOfSequences()
getSQLListOfSequences in interface DatabaseInterfacegetSQLListOfSequences in class BaseDatabaseMetapublic String getSQLSequenceExists(String sequenceName)
getSQLSequenceExists in interface DatabaseInterfacegetSQLSequenceExists in class BaseDatabaseMetasequenceName - The sequence to checkpublic String getSQLCurrentSequenceValue(String sequenceName)
getSQLCurrentSequenceValue in interface DatabaseInterfacegetSQLCurrentSequenceValue in class BaseDatabaseMetasequenceName - The sequence to checkpublic String getSQLNextSequenceValue(String sequenceName)
getSQLNextSequenceValue in interface DatabaseInterfacegetSQLNextSequenceValue in class BaseDatabaseMetasequenceName - The sequence namepublic String getExtraOptionIndicator()
getExtraOptionIndicator in interface DatabaseInterfacegetExtraOptionIndicator in class BaseDatabaseMetapublic boolean supportsSequenceNoMaxValueOption()
supportsSequenceNoMaxValueOption in interface DatabaseInterfacesupportsSequenceNoMaxValueOption in class BaseDatabaseMetapublic boolean requiresCastToVariousForIsNull()
requiresCastToVariousForIsNull in interface DatabaseInterfacerequiresCastToVariousForIsNull in class BaseDatabaseMetapublic boolean isDisplaySizeTwiceThePrecision()
isDisplaySizeTwiceThePrecision in interface DatabaseInterfaceisDisplaySizeTwiceThePrecision in class BaseDatabaseMetapublic boolean supportsNewLinesInSQL()
supportsNewLinesInSQL in interface DatabaseInterfacesupportsNewLinesInSQL in class BaseDatabaseMetapublic String getSQLInsertAutoIncUnknownDimensionRow(String schemaTable, String keyField, String versionField)
getSQLInsertAutoIncUnknownDimensionRow in interface DatabaseInterfacegetSQLInsertAutoIncUnknownDimensionRow in class BaseDatabaseMetaschemaTable - the schema-table name to insert intokeyField - The key fieldversionField - the version field