Package org.pentaho.di.core.database
Class GuptaDatabaseMeta
java.lang.Object
org.pentaho.di.core.database.BaseDatabaseMeta
org.pentaho.di.core.database.GuptaDatabaseMeta
- All Implemented Interfaces:
Cloneable
,DatabaseInterface
,DatabaseInterfaceExtended
Contains Gupta SQLBase specific information through static final members
- Since:
- 11-mrt-2005
- Author:
- Matt
-
Field Summary
Fields inherited from class org.pentaho.di.core.database.BaseDatabaseMeta
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, NAMED_CLUSTER_ID, poolingParameters, releaseSavepoint, SELECT_COUNT_STATEMENT, SEQUENCE_FOR_BATCH_ID
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint[]
Get the list of possible access types for a database.getAddColumnStatement
(String tablename, ValueMetaInterface v, String tk, boolean useAutoinc, String pk, boolean semicolon) Generates the SQL statement to add a column to the specified tableint
Obtain the name of the JDBC driver class that we need to use!getFieldDefinition
(ValueMetaInterface v, String tk, String pk, boolean useAutoinc, boolean addFieldName, boolean addCr) Describe a Value as a field in the database.getModifyColumnStatement
(String tablename, ValueMetaInterface v, String tk, boolean useAutoinc, String pk, boolean semicolon) Generates the SQL statement to modify a column in the specified tableString[]
boolean
Checks whether or not the command setFetchSize() is supported by the JDBC driver...boolean
isSystemTable
(String tableName) boolean
boolean
boolean
boolean
Most databases allow you to retrieve result metadata by preparing a SELECT statement.boolean
Methods inherited from class org.pentaho.di.core.database.BaseDatabaseMeta
addAttribute, addDefaultOptions, addExtraOption, canTest, checkIndexExists, clone, customizeValueFromSQLType, fullExceptionLog, generateColumnAlias, getAccessType, getAttribute, getAttributes, getBackwardsCompatibleSchemaTableCombination, getBackwardsCompatibleTable, getConnectionPoolingProperties, getConnectSQL, getCreateTableStatement, getDatabaseFactoryName, getDatabaseName, getDatabasePortNumberString, getDataTablespace, getDataTablespaceDDL, getDefaultOptions, getDisplayName, getDropColumnStatement, getDropTableIfExistsStatement, getEndQuote, getExtraOptionIndicator, getExtraOptions, getExtraOptionSeparator, getExtraOptionsHelpText, getExtraOptionValueSeparator, getFieldnameProtector, getFunctionAverage, getFunctionCount, getFunctionMaximum, getFunctionMinimum, getFunctionSum, getHostname, getIndexTablespace, getIndexTablespaceDDL, getInitialPoolSize, getInitialPoolSizeString, getLimitClause, getMaxColumnsInIndex, getMaximumPoolSize, getMaximumPoolSizeString, getMaxTextFieldLength, getMaxVARCHARLength, getName, getNamedCluster, getNextBatchId, getNextBatchIdUsingAutoIncSQL, getNextBatchIdUsingLockTables, getNextBatchIdUsingSequence, getNotFoundTK, getObjectId, getPartitioningInformation, getPassword, getPluginId, getPluginName, getPreferredSchemaName, getReservedWords, getSafeFieldname, getSchemaTableCombination, getSelectCountStatement, getSequenceNoMaxValueOption, getServername, getSQLColumnExists, getSQLCurrentSequenceValue, getSQLInsertAutoIncUnknownDimensionRow, getSQLListOfProcedures, getSQLListOfSchemas, getSQLListOfSequences, getSQLLockTables, getSQLNextSequenceValue, getSQLQueryFields, getSqlScriptStatements, getSQLSequenceExists, getSQLTableExists, getSQLUnlockTables, getSQLValue, getStartQuote, getSynonymTypes, getTablespaceDDL, getTableTypes, getTruncateTableStatement, getUsername, getValueFromResultSet, getViewTypes, getXulOverlayFile, isChanged, isDefaultingToUppercase, isDisplaySizeTwiceThePrecision, isExplorable, isForcingIdentifiersToLowerCase, isForcingIdentifiersToUpperCase, isMySQLVariant, isPartitioned, isQuoteAllFields, isRequiringTransactionsOnQueries, isStreamingResults, isUsingConnectionPool, isUsingDoubleDecimalAsSchemaTableSeparator, needsPlaceHolder, needsToLockAllTables, onlySpaces, parseStatements, preserveReservedCase, quoteReservedWords, quoteSQLString, releaseSavepoint, requiresCastToVariousForIsNull, requiresCreateTablePrimaryKeyAppend, requiresName, setAccessType, setAttributes, setChanged, setConnectionPoolingProperties, setConnectSQL, setDatabaseName, setDatabasePortNumberString, setDataTablespace, setDisplayName, setForcingIdentifiersToLowerCase, setForcingIdentifiersToUpperCase, setHostname, setIndexTablespace, setInitialPoolSize, setInitialPoolSizeString, setMaximumPoolSize, setMaximumPoolSizeString, setName, setNamedCluster, setObjectId, setPartitioned, setPartitioningInformation, setPassword, setPluginId, setPluginName, setPreferredSchemaName, setPreserveReservedCase, setQuoteAllFields, setServername, setStreamingResults, setSupportsBooleanDataType, setSupportsTimestampDataType, setUsername, setUsingConnectionPool, setUsingDoubleDecimalAsSchemaTableSeparator, supportsAutoGeneratedKeys, supportsBatchUpdates, supportsBooleanDataType, supportsEmptyTransactions, supportsErrorHandling, supportsErrorHandlingOnBatchUpdates, supportsFloatRoundingOnUpdate, supportsGetBlob, supportsNewLinesInSQL, supportsOptionsInURL, supportsRepository, supportsResultSetMetadataRetrievalOnly, supportsSchemas, supportsSequenceNoMaxValueOption, supportsSequences, supportsSetCharacterStream, supportsSetLong, supportsSetMaxRows, supportsSynonyms, supportsTimestampDataType, supportsTransactions, supportsViews, useSafePoints, useSchemaNameForTableList
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.pentaho.di.core.database.DatabaseInterface
addAttribute, addDefaultOptions, addExtraOption, checkIndexExists, clone, createSqlScriptParser, customizeValueFromSQLType, generateColumnAlias, getAccessType, getAttribute, getAttributes, getConnectionPoolingProperties, getConnectSQL, getCreateTableStatement, getDatabaseFactoryName, getDatabaseName, getDatabasePortNumberString, getDataTablespace, getDataTablespaceDDL, getDefaultOptions, getDisplayName, getDropColumnStatement, getEndQuote, getExtraOptionIndicator, getExtraOptions, getExtraOptionSeparator, getExtraOptionsHelpText, getExtraOptionValueSeparator, getFunctionAverage, getFunctionCount, getFunctionMaximum, getFunctionMinimum, getFunctionSum, getHostname, getIndexTablespace, getIndexTablespaceDDL, getInitialPoolSize, getInitialPoolSizeString, getLegacyColumnName, getLimitClause, getMaxColumnsInIndex, getMaximumPoolSize, getMaximumPoolSizeString, getMaxTextFieldLength, getMaxVARCHARLength, getName, getNamedCluster, getNamedClusterList, getNextBatchId, getNotFoundTK, getObjectId, getPartitioningInformation, getPassword, getPluginId, getPluginName, getPreferredSchemaName, getReservedWords, getSafeFieldname, getSchemas, getSchemaTableCombination, getSelectCountStatement, getSequenceNoMaxValueOption, getServername, getSQLColumnExists, getSQLCurrentSequenceValue, getSQLInsertAutoIncUnknownDimensionRow, getSQLListOfProcedures, getSQLListOfSchemas, getSQLListOfSchemas, getSQLListOfSequences, getSQLLockTables, getSQLNextSequenceValue, getSQLQueryFields, getSqlScriptStatements, getSQLSequenceExists, getSQLTableExists, getSQLUnlockTables, getSQLValue, getStartQuote, getSynonymTypes, getTables, getTableTypes, getTruncateTableStatement, getUnsupportedTableOutputMessage, getUsername, getValueFromResultSet, getViewTypes, getXulOverlayFile, isChanged, isDefaultingToUppercase, isDisplaySizeTwiceThePrecision, isExplorable, isForcingIdentifiersToLowerCase, isForcingIdentifiersToUpperCase, isMySQLVariant, isPartitioned, isQuoteAllFields, isRequiringTransactionsOnQueries, isStreamingResults, isUsingConnectionPool, isUsingDoubleDecimalAsSchemaTableSeparator, needsPlaceHolder, needsToLockAllTables, parseStatements, preserveReservedCase, putOptionalOptions, quoteReservedWords, quoteSQLString, releaseSavepoint, requiresCastToVariousForIsNull, requiresCreateTablePrimaryKeyAppend, setAccessType, setAttributes, setChanged, setConnectionPoolingProperties, setConnectSQL, setDatabaseName, setDatabasePortNumberString, setDataTablespace, setDisplayName, setForcingIdentifiersToLowerCase, setForcingIdentifiersToUpperCase, setHostname, setIndexTablespace, setInitialPoolSize, setInitialPoolSizeString, setMaximumPoolSize, setMaximumPoolSizeString, setName, setNamedCluster, setObjectId, setPartitioned, setPartitioningInformation, setPassword, setPluginId, setPluginName, setPreferredSchemaName, setPreserveReservedCase, setQuoteAllFields, setServername, setStreamingResults, setSupportsBooleanDataType, setSupportsTimestampDataType, setUsername, setUsingConnectionPool, setUsingDoubleDecimalAsSchemaTableSeparator, supportsAutoGeneratedKeys, supportsBatchUpdates, supportsBooleanDataType, supportsEmptyTransactions, supportsErrorHandling, supportsErrorHandlingOnBatchUpdates, supportsFloatRoundingOnUpdate, supportsGetBlob, supportsIndexes, supportsNewLinesInSQL, supportsOptionsInURL, supportsRepository, supportsResultSetMetadataRetrievalOnly, supportsSchemas, supportsSequenceNoMaxValueOption, supportsSequences, supportsSetCharacterStream, supportsSetLong, supportsSetMaxRows, supportsStandardTableOutput, supportsSynonyms, supportsTimestampDataType, supportsTransactions, supportsViews, useSafePoints, useSchemaNameForTableList
-
Constructor Details
-
GuptaDatabaseMeta
public GuptaDatabaseMeta()
-
-
Method Details
-
getAccessTypeList
public int[] getAccessTypeList()Description copied from interface:DatabaseInterface
Get the list of possible access types for a database.- Specified by:
getAccessTypeList
in interfaceDatabaseInterface
- Specified by:
getAccessTypeList
in classBaseDatabaseMeta
- Returns:
- the list of possible access types for a database.
-
getDefaultDatabasePort
public int getDefaultDatabasePort()- Specified by:
getDefaultDatabasePort
in interfaceDatabaseInterface
- Overrides:
getDefaultDatabasePort
in classBaseDatabaseMeta
- Returns:
- the default database port number
-
supportsAutoInc
public boolean supportsAutoInc()- Specified by:
supportsAutoInc
in interfaceDatabaseInterface
- Overrides:
supportsAutoInc
in classBaseDatabaseMeta
- Returns:
- Whether or not the database can use auto increment type of fields (pk)
-
getDriverClass
Description copied from interface:DatabaseInterface
Obtain the name of the JDBC driver class that we need to use!- Specified by:
getDriverClass
in interfaceDatabaseInterface
- Returns:
- the name of the JDBC driver class for the specific database
-
getURL
- Specified by:
getURL
in interfaceDatabaseInterface
- Parameters:
hostname
- the hostnameport
- the port as a stringdatabaseName
- the database name- Returns:
- the URL to use for connecting to the database.
-
isFetchSizeSupported
public boolean isFetchSizeSupported()Checks whether or not the command setFetchSize() is supported by the JDBC driver...- Specified by:
isFetchSizeSupported
in interfaceDatabaseInterface
- Overrides:
isFetchSizeSupported
in classBaseDatabaseMeta
- Returns:
- true is setFetchSize() is supported!
-
supportsBitmapIndex
public boolean supportsBitmapIndex()- Specified by:
supportsBitmapIndex
in interfaceDatabaseInterface
- Overrides:
supportsBitmapIndex
in classBaseDatabaseMeta
- Returns:
- true if the database supports bitmap indexes
-
supportsCatalogs
public boolean supportsCatalogs()- Specified by:
supportsCatalogs
in interfaceDatabaseInterface
- Overrides:
supportsCatalogs
in classBaseDatabaseMeta
- Returns:
- true if the database supports catalogs
-
supportsTimeStampToDateConversion
public boolean supportsTimeStampToDateConversion()- Specified by:
supportsTimeStampToDateConversion
in interfaceDatabaseInterface
- Overrides:
supportsTimeStampToDateConversion
in classBaseDatabaseMeta
- Returns:
- true if the database supports timestamp to date conversion. Gupta doesn't support this!
-
getAddColumnStatement
public String getAddColumnStatement(String tablename, ValueMetaInterface v, String tk, boolean useAutoinc, String pk, boolean semicolon) Generates the SQL statement to add a column to the specified table- Specified by:
getAddColumnStatement
in interfaceDatabaseInterface
- Parameters:
tablename
- The table to addv
- The column defined as a valuetk
- the name of the technical key fielduseAutoinc
- 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.- Returns:
- the SQL statement to add a column to the specified table
-
getModifyColumnStatement
public String getModifyColumnStatement(String tablename, ValueMetaInterface v, String tk, boolean useAutoinc, String pk, boolean semicolon) Generates the SQL statement to modify a column in the specified table- Specified by:
getModifyColumnStatement
in interfaceDatabaseInterface
- Parameters:
tablename
- The table to addv
- The column defined as a valuetk
- the name of the technical key fielduseAutoinc
- 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.- Returns:
- the SQL statement to modify a column in the specified table
-
getFieldDefinition
public String getFieldDefinition(ValueMetaInterface v, String tk, String pk, boolean useAutoinc, boolean addFieldName, boolean addCr) Description copied from interface:DatabaseInterface
Describe a Value as a field in the database.- Specified by:
getFieldDefinition
in interfaceDatabaseInterface
- Parameters:
v
- The value to describetk
- The field that's going to be the technical keypk
- The field that's going to be the primary keyuseAutoinc
- Use autoincrement or notaddFieldName
- Add the fieldname to the definition or notaddCr
- Add a cariage return at the end of the definition or not.- Returns:
- a value described as a field in this database.
-
getUsedLibraries
- Specified by:
getUsedLibraries
in interfaceDatabaseInterface
- Returns:
- the required libraries (in lib) for this database connection.
-
isSystemTable
- Specified by:
isSystemTable
in interfaceDatabaseInterface
- Overrides:
isSystemTable
in classBaseDatabaseMeta
- Parameters:
tableName
-- Returns:
- true if the specified table is a system table
-
supportsPreparedStatementMetadataRetrieval
public boolean supportsPreparedStatementMetadataRetrieval()Most databases allow you to retrieve result metadata by preparing a SELECT statement. Gupta though doesn't. See PDI-14893- Specified by:
supportsPreparedStatementMetadataRetrieval
in interfaceDatabaseInterface
- Overrides:
supportsPreparedStatementMetadataRetrieval
in classBaseDatabaseMeta
- Returns:
- true if the database supports retrieval of query metadata from a prepared statement. False if the query needs to be executed first.
-