Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.openjpa.jdbc.sql
Class DBDictionary

    java.lang.Object
      org.apache.openjpa.jdbc.sql.DBDictionary

All Implemented Interfaces:
  JoinSyntaxes, Configurable, ConnectionDecorator, LoggingConnectionDecorator.SQLWarningHandler

Direct Known Subclasses:
  AbstractDB2Dictionary, AbstractSQLServerDictionary, AccessDictionary, CacheDictionary, EmpressDictionary, FoxProDictionary, HSQLDictionary, InformixDictionary, InterbaseDictionary, JDataStoreDictionary, MySQLDictionary, OracleDictionary, PointbaseDictionary, PostgresDictionary

    public class DBDictionary

extends Object
implements Configurable, ConnectionDecorator, JoinSyntaxes, LoggingConnectionDecorator.SQLWarningHandler

Class which allows the creation of SQL dynamically, in a database agnostic fashion. Subclass for the nuances of different data stores.

Nested Class Summary
`static class` | `DBDictionary.SerializedData` Used by some mappings to represent data that has already been serialized so that we don't have to serialize multiple times.

Field Summary
`boolean` | `allowsAliasInBulkClause`
`String` | `arrayTypeName`
`String` | `autoAssignClause`
`String` | `autoAssignTypeName`
`String` | `bigintTypeName`
`String` | `binaryTypeName`
`String` | `bitLengthFunction`
`String` | `bitTypeName`
`String` | `blobTypeName`
`String` | `booleanTypeName`
`String` | `castFunction`
`String` | `catalogSeparator`
`protected static int` | `CENTI`
`int` | `characterColumnSize`
`String` | `charTypeName`
`String` | `clobTypeName`
`String` | `closePoolSQL`
`String` | `concatenateDelimiter`
`String` | `concatenateFunction`
`protected JDBCConfiguration` | `conf`
`protected boolean` | `connected`
`static String` | `CONS_NAME_AFTER`
`static String` | `CONS_NAME_BEFORE`
`static String` | `CONS_NAME_MID`
`String` | `constraintNameMode`
`boolean` | `createPrimaryKeys`
`String` | `crossJoinClause`
`String` | `currentDateFunction`
`String` | `currentTimeFunction`
`String` | `currentTimestampFunction`
`int` | `datePrecision`
`String` | `dateTypeName`
`protected static int` | `DECI`
`String` | `decimalTypeName`
`String` | `distinctCountColumnSeparator`
`String` | `distinctTypeName`
`String` | `doubleTypeName`
`String` | `driverVendor`
`String` | `dropTableSQL`
`String` | `fixedSizeTypeNames`
`protected Set` | `fixedSizeTypeNameSet`
`String` | `floatTypeName`
`String` | `forUpdateClause`
`String` | `initializationSQL`
`String` | `innerJoinClause`
`String` | `integerTypeName`
`String` | `javaObjectTypeName`
`int` | `joinSyntax`
`String` | `lastGeneratedKeyQuery`
`protected Log` | `log`
`String` | `longVarbinaryTypeName`
`String` | `longVarcharTypeName`
`int` | `maxAutoAssignNameLength`
`int` | `maxColumnNameLength`
`int` | `maxConstraintNameLength`
`int` | `maxEmbeddedBlobSize`
`int` | `maxEmbeddedClobSize`
`int` | `maxIndexesPerTable`
`int` | `maxIndexNameLength`
`int` | `maxTableNameLength`
`protected static int` | `MICRO`
`protected static int` | `MILLI`
`protected static int` | `NAME_ANY`
`protected static int` | `NAME_SEQUENCE`
`protected static int` | `NAME_TABLE`
`protected static int` | `NANO`
`String` | `nextSequenceQuery`
`String` | `nullTypeName`
`String` | `numericTypeName`
`String` | `otherTypeName`
`String` | `outerJoinClause`
`String` | `platform`
`protected static int` | `RANGE_POST_DISTINCT`
`protected static int` | `RANGE_POST_LOCK`
`protected static int` | `RANGE_POST_SELECT`
`protected static int` | `RANGE_PRE_DISTINCT`
`int` | `rangePosition`
`String` | `realTypeName`
`String` | `refTypeName`
`boolean` | `requiresAliasForSubselect`
`boolean` | `requiresAutoCommitForMetaData`
`boolean` | `requiresCastForComparisons`
`boolean` | `requiresCastForMathFunctions`
`boolean` | `requiresConditionForCrossJoin`
`String` | `reservedWords`
`protected Set` | `reservedWordSet`
`static String` | `SCHEMA_CASE_LOWER`
`static String` | `SCHEMA_CASE_PRESERVE`
`static String` | `SCHEMA_CASE_UPPER`
`String` | `schemaCase`
`String` | `searchStringEscape`
`protected static int` | `SEC`
`boolean` | `simulateLocking`
`String` | `smallintTypeName`
`boolean` | `storageLimitationsFatal`
`boolean` | `storeCharsAsNumbers`
`boolean` | `storeLargeNumbersAsStrings`
`String` | `stringLengthFunction`
`String` | `structTypeName`
`String` | `substringFunctionName`
`boolean` | `supportsAlterTableWithAddColumn`
`boolean` | `supportsAlterTableWithDropColumn`
`boolean` | `supportsAutoAssign`
`boolean` | `supportsCascadeDeleteAction`
`boolean` | `supportsCascadeUpdateAction`
`boolean` | `supportsCorrelatedSubselect`
`boolean` | `supportsDefaultDeleteAction`
`boolean` | `supportsDefaultUpdateAction`
`boolean` | `supportsDeferredConstraints`
`boolean` | `supportsForeignKeys`
`boolean` | `supportsHaving`
`boolean` | `supportsLockingWithDistinctClause`
`boolean` | `supportsLockingWithInnerJoin`
`boolean` | `supportsLockingWithMultipleTables`
`boolean` | `supportsLockingWithOrderClause`
`boolean` | `supportsLockingWithOuterJoin`
`boolean` | `supportsLockingWithSelectRange`
`boolean` | `supportsModOperator`
`boolean` | `supportsMultipleNontransactionalResultSets`
`boolean` | `supportsNullDeleteAction`
`boolean` | `supportsNullTableForGetColumns`
`boolean` | `supportsNullTableForGetImportedKeys`
`boolean` | `supportsNullTableForGetIndexInfo`
`boolean` | `supportsNullTableForGetPrimaryKeys`
`boolean` | `supportsNullUpdateAction`
`boolean` | `supportsQueryTimeout`
`boolean` | `supportsRestrictDeleteAction`
`boolean` | `supportsRestrictUpdateAction`
`boolean` | `supportsSchemaForGetColumns`
`boolean` | `supportsSchemaForGetTables`
`boolean` | `supportsSelectEndIndex`
`boolean` | `supportsSelectForUpdate`
`boolean` | `supportsSelectStartIndex`
`boolean` | `supportsSubselect`
`boolean` | `supportsTimestampNanos`
`boolean` | `supportsUniqueConstraints`
`String` | `systemSchemas`
`protected Set` | `systemSchemaSet`
`String` | `systemTables`
`protected Set` | `systemTableSet`
`String` | `tableForUpdateClause`
`String` | `tableTypes`
`String` | `timestampTypeName`
`String` | `timeTypeName`
`String` | `tinyintTypeName`
`String` | `toLowerCaseFunction`
`String` | `toUpperCaseFunction`
`String` | `trimBothFunction`
`String` | `trimLeadingFunction`
`String` | `trimTrailingFunction`
`boolean` | `useGetBestRowIdentifierForPrimaryKeys`
`boolean` | `useGetBytesForBlobs`
`boolean` | `useGetObjectForBlobs`
`boolean` | `useGetStringForClobs`
`boolean` | `useSchemaName`
`boolean` | `useSetBytesForBlobs`
`boolean` | `useSetStringForClobs`
`String` | `validationSQL`
`String` | `varbinaryTypeName`
`String` | `varcharTypeName`
`static String` | `VENDOR_DATADIRECT`
`static String` | `VENDOR_OTHER`

Fields inherited from interface org.apache.openjpa.jdbc.sql.JoinSyntaxes
`SYNTAX_DATABASE, SYNTAX_SQL92, SYNTAX_TRADITIONAL`

Constructor Summary
`DBDictionary()`

Method Summary
`void` | `appendCast(SQLBuffer buf, FilterValue val, int type)` Cast the specified value to the specified type.
`protected void` | `appendNumericCast(SQLBuffer buf, FilterValue val)` Append SQL for the given numeric value to the buffer, casting as needed.
`protected void` | `appendSelectRange(SQLBuffer buf, long start, long end)` If this dictionary can select ranges, use this method to append the range SQL.
`protected String` | `appendSize(Column col, String typeName)` Helper method to add size properties to the specified type.
`protected void` | `appendUpdates(Select sel, JDBCStore store, SQLBuffer sql, Object[] params, Map updateParams, boolean allowAlias)`
`void` | `assertSupport(boolean feature, String property)` Assert that the given dictionary flag is true.
`boolean` | `canOuterJoin(int syntax, ForeignKey fk)` Returns if the given foreign key can be eagerly loaded using other joins.
`void` | `closeDataSource(DataSource dataSource)` Closes the specified `DataSource` and releases any resources associated with it.
`void` | `comparison(SQLBuffer buf, String op, FilterValue lhs, FilterValue rhs)` Append a comparison.
`void` | `connectedConfiguration(Connection conn)` This method is called when the dictionary first sees any connection.
`protected String` | `convertSchemaCase(String objectName)` Convert the specified schema name to a name that the database will be able to understand.
`Connection` | `decorate(Connection conn)` Decorate the given connection if needed.
`void` | `endConfiguration()` Invoked upon completion of bean property configuration for this object.
`String[]` | `getAddColumnSQL(Column column)` Return a series of SQL statements to add the given column to its table.
`String[]` | `getAddForeignKeySQL(ForeignKey fk)` Return a series of SQL statements to add the given foreign key to its table.
`String[]` | `getAddPrimaryKeySQL(PrimaryKey pk)` Return a series of SQL statements to add the given primary key to its table.
`Array` | `getArray(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`InputStream` | `getAsciiStream(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`BigDecimal` | `getBigDecimal(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`BigInteger` | `getBigInteger(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`InputStream` | `getBinaryStream(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`Blob` | `getBlob(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`Object` | `getBlobObject(ResultSet rs, int column, JDBCStore store)` Convert the specified column of the SQL ResultSet to the proper java type.
`boolean` | `getBoolean(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`byte` | `getByte(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`byte[]` | `getBytes(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`Calendar` | `getCalendar(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`protected String` | `getCatalogNameForMetadata(String catalogName)` Returns the catalog name that will be used for obtaining information from `DatabaseMetaData`.
`char` | `getChar(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`Reader` | `getCharacterStream(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`Clob` | `getClob(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`String` | `getClobString(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`protected String` | `getColumnNameForMetadata(String columnName)` Returns the column name that will be used for obtaining information from `DatabaseMetaData`.
`Column[]` | `getColumns(DatabaseMetaData meta, String catalog, String schemaName, String tableName, String columnName, Connection conn)` Reflect on the schema to find columns matching the given table and column patterns.
`String[]` | `getCreateIndexSQL(Index index)` Return a series of SQL statements to create the given index.
`String[]` | `getCreateSequenceSQL(Sequence seq)` Return a series of SQL statements to create the given sequence.
`String[]` | `getCreateTableSQL(Table table)` Return a series of SQL statements to create the given table, complete with columns.
`Date` | `getDate(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`Date` | `getDate(ResultSet rs, int column, Calendar cal)` Convert the specified column of the SQL ResultSet to the proper java type.
`protected String` | `getDeclareColumnSQL(Column col, boolean alter)` Return the declaration SQL for the given column.
`double` | `getDouble(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`String[]` | `getDropColumnSQL(Column column)` Return a series of SQL statements to drop the given column from its table.
`String[]` | `getDropForeignKeySQL(ForeignKey fk)` Return a series of SQL statements to drop the given foreign key from its table.
`String[]` | `getDropIndexSQL(Index index)` Return a series of SQL statements to drop the given index.
`String[]` | `getDropPrimaryKeySQL(PrimaryKey pk)` Return a series of SQL statements to drop the given primary key from its table.
`String[]` | `getDropSequenceSQL(Sequence seq)` Return a series of SQL statements to drop the given sequence.
`String[]` | `getDropTableSQL(Table table)` Return a series of SQL statements to drop the given table.
`float` | `getFloat(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`protected String` | `getForeignKeyConstraintSQL(ForeignKey fk)` Return the declaration SQL for the given foreign key, or null if it is not supported.
`protected SQLBuffer` | `getFrom(Select sel, boolean forUpdate)` Return the portion of the select statement between the FROM keyword and the WHERE keyword.
`protected SQLBuffer` | `getFromSelect(Select sel, boolean forUpdate)` Return the FROM clause for a select that selects from a tmp table created by an inner select.
`String` | `getFullName(Index index)` Returns the full name of the index, including the schema (delimited by the result of `catalogSeparator`).
`String` | `getFullName(Sequence seq)` Returns the full name of the sequence, including the schema (delimited by the result of `catalogSeparator`).
`String` | `getFullName(Table table, boolean logical)` Returns the full name of the table, including the schema (delimited by `catalogSeparator`).
`Object` | `getGeneratedKey(Column col, Connection conn)` Return the last generated value for the given column.
`protected String` | `getGeneratedKeySequenceName(Column col)` Return the sequence name used by databases for the given autoassigned column.
`ForeignKey[]` | `getImportedKeys(DatabaseMetaData meta, String catalog, String schemaName, String tableName, Connection conn)` Reflect on the schema to return foreign keys imported by the given table pattern.
`Index[]` | `getIndexInfo(DatabaseMetaData meta, String catalog, String schemaName, String tableName, boolean unique, boolean approx, Connection conn)` Reflect on the schema to find indexes matching the given table pattern.
`int` | `getInt(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`int` | `getJDBCType(int metaTypeCode, boolean lob)` Return the preferred `Types` constant for the given `JavaTypes` or `JavaSQLTypes` constant.
`Locale` | `getLocale(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`long` | `getLong(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`Number` | `getNumber(ResultSet rs, int column)` Returns the specified column value as an unknown numeric type; we try from the most generic to the least generic.
`Object` | `getObject(ResultSet rs, int column, Map map)` Convert the specified column of the SQL ResultSet to the proper java type.
`String` | `getPlaceholderValueString(Column col)` Return a SQL string to act as a placeholder for the given column.
`int` | `getPreferredType(int type)` Return the preferred `Types` type for the given one.
`protected String` | `getPrimaryKeyConstraintSQL(PrimaryKey pk)` Return the declaration SQL for the given primary key.
`PrimaryKey[]` | `getPrimaryKeys(DatabaseMetaData meta, String catalog, String schemaName, String tableName, Connection conn)` Reflect on the schema to find primary keys for the given table pattern.
`protected PrimaryKey[]` | `getPrimaryKeysFromBestRowIdentifier(DatabaseMetaData meta, String catalog, String schemaName, String tableName, Connection conn)` Reflect on the schema to find primary keys for the given table pattern.
`protected PrimaryKey[]` | `getPrimaryKeysFromGetPrimaryKeys(DatabaseMetaData meta, String catalog, String schemaName, String tableName, Connection conn)` Reflect on the schema to find primary keys for the given table pattern.
`Ref` | `getRef(ResultSet rs, int column, Map map)` Convert the specified column of the SQL ResultSet to the proper java type.
`protected String` | `getSchemaNameForMetadata(String schemaName)` Returns the schema name that will be used for obtaining information from `DatabaseMetaData`.
`String` | `getSelectOperation(JDBCFetchConfiguration fetch)` Return the "SELECT" operation clause, adding any available hints, etc.
`protected SQLBuffer` | `getSelects(Select sel, boolean distinctIdentifiers, boolean forUpdate)` Return the portion of the select statement between the SELECT keyword and the FROM keyword.
`Sequence[]` | `getSequences(DatabaseMetaData meta, String catalog, String schemaName, String sequenceName, Connection conn)` Reflect on the schema to find sequences matching the given name pattern.
`protected String` | `getSequencesSQL(String schemaName, String sequenceName)` Return the SQL needed to select the list of sequences.
`short` | `getShort(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`String` | `getString(ResultSet rs, int column)` Convert the specified column of the SQL ResultSet to the proper java type.
`protected String` | `getTableNameForMetadata(String tableName)` Returns the table name that will be used for obtaining information from `DatabaseMetaData`.
`Table[]` | `getTables(DatabaseMetaData meta, String catalog, String schemaName, String tableName, Connection conn)` Reflect on the schema to find tables matching the given name pattern.
`Time` | `getTime(ResultSet rs, int column, Calendar cal)` Convert the specified column of the SQL ResultSet to the proper java type.
`Timestamp` | `getTimestamp(ResultSet rs, int column, Calendar cal)` Convert the specified column of the SQL ResultSet to the proper java type.
`String` | `getTypeName(Column col)` Return the preferred database type name for the given column's type from `Types`.
`String` | `getTypeName(int type)` Returns the type name for the specific constant as defined by `Types`.
`protected String` | `getUniqueConstraintSQL(Unique unq)` Return the declaration SQL for the given unique constraint.
`String` | `getValidColumnName(String name, Table table)` Make any necessary changes to the given column name to make it valid for the current DB.
`String` | `getValidForeignKeyName(String name, Table table, Table toTable)` Make any necessary changes to the given foreign key name to make it valid for the current DB.
`String` | `getValidIndexName(String name, Table table)` Make any necessary changes to the given index name to make it valid for the current DB.
`String` | `getValidPrimaryKeyName(String name, Table table)` Make any necessary changes to the given primary key name to make it valid for the current DB.
`String` | `getValidSequenceName(String name, Schema schema)` Make any necessary changes to the given sequence name to make it valid for the current DB.
`String` | `getValidTableName(String name, Schema schema)` Make any necessary changes to the given table name to make it valid for the current DB.
`String` | `getValidUniqueName(String name, Table table)` Make any necessary changes to the given unique constraint name to make it valid for the current DB.
`protected SQLBuffer` | `getWhere(Select sel, boolean forUpdate)` Return the WHERE portion of the select statement, or null if no where conditions.
`void` | `handleWarning(SQLWarning warning)` Implementation of the `LoggingConnectionDecorator.SQLWarningHandler` interface that allows customization of the actions to perform when a `SQLWarning` occurs at any point on a `Connection`, `Statement`, or `ResultSet`.
`void` | `indexOf(SQLBuffer buf, FilterValue str, FilterValue find, FilterValue start)` Invoke this database's indexOf function.
`boolean` | `isSystemIndex(String name, Table table)` This method is used to filter system indexes from database metadata.
`boolean` | `isSystemSequence(String name, String schema, boolean targetSchema)` This method is used to filter system sequences from database metadata.
`boolean` | `isSystemTable(String name, String schema, boolean targetSchema)` This method is used to filter system tables from database metadata.
`protected String` | `makeNameValid(String name, NameSet set, int maxLen, int nameType)` Shortens the given name to the given maximum length, then checks that it is not a reserved word.
`void` | `mathFunction(SQLBuffer buf, String op, FilterValue lhs, FilterValue rhs)` Append the numeric parts of a mathematical function.
`protected Column` | `newColumn(ResultSet colMeta)` Create a new column from the information in the schema metadata.
`protected ForeignKey` | `newForeignKey(ResultSet fkMeta)` Create a new foreign key from the information in the schema metadata.
`protected Index` | `newIndex(ResultSet idxMeta)` Create a new index from the information in the schema metadata.
`protected PrimaryKey` | `newPrimaryKey(ResultSet pkMeta)` Create a new primary key from the information in the schema metadata.
`protected Sequence` | `newSequence(ResultSet sequenceMeta)` Create a new sequence from the information in the schema metadata.
`OpenJPAException` | `newStoreException(String msg, SQLException[] causes, Object failed)` Return a new exception that wraps `causes`.
`protected Table` | `newTable(ResultSet tableMeta)` Create a new table from the information in the schema metadata.
`void` | `putBytes(Object blob, byte[] data)` Invoke the JDK 1.4 `setBytes` method on the given BLOB object.
`void` | `putChars(Object clob, char[] data)` Invoke the JDK 1.4 `setCharacterStream` method on the given CLOB object.
`void` | `putString(Object clob, String data)` Invoke the JDK 1.4 `setString` method on the given CLOB object.
`void` | `refSchemaComponents(Table table)` Increment the reference count of any table components that this dictionary adds that are not used by mappings.
`byte[]` | `serialize(Object val, JDBCStore store)` Return the serialized bytes for the given object.
`void` | `setArray(PreparedStatement stmnt, int idx, Array val, Column col)` Set the given value as a parameter to the statement.
`void` | `setAsciiStream(PreparedStatement stmnt, int idx, InputStream val, int length, Column col)` Set the given value as a parameter to the statement.
`void` | `setBigDecimal(PreparedStatement stmnt, int idx, BigDecimal val, Column col)` Set the given value as a parameter to the statement.
`void` | `setBigInteger(PreparedStatement stmnt, int idx, BigInteger val, Column col)` Set the given value as a parameter to the statement.
`void` | `setBinaryStream(PreparedStatement stmnt, int idx, InputStream val, int length, Column col)` Set the given value as a parameter to the statement.
`void` | `setBlob(PreparedStatement stmnt, int idx, Blob val, Column col)` Set the given value as a parameter to the statement.
`void` | `setBlobObject(PreparedStatement stmnt, int idx, Object val, Column col, JDBCStore store)` Set the given value as a parameter to the statement.
`void` | `setBoolean(PreparedStatement stmnt, int idx, boolean val, Column col)` Set the given value as a parameter to the statement.
`void` | `setByte(PreparedStatement stmnt, int idx, byte val, Column col)` Set the given value as a parameter to the statement.
`void` | `setBytes(PreparedStatement stmnt, int idx, byte[] val, Column col)` Set the given value as a parameter to the statement.
`void` | `setCalendar(PreparedStatement stmnt, int idx, Calendar val, Column col)` Set the given value as a parameter to the statement.
`void` | `setChar(PreparedStatement stmnt, int idx, char val, Column col)` Set the given value as a parameter to the statement.
`void` | `setCharacterStream(PreparedStatement stmnt, int idx, Reader val, int length, Column col)` Set the given value as a parameter to the statement.
`void` | `setClob(PreparedStatement stmnt, int idx, Clob val, Column col)` Set the given value as a parameter to the statement.
`void` | `setClobString(PreparedStatement stmnt, int idx, String val, Column col)` Set the given value as a parameter to the statement.
`void` | `setConfiguration(Configuration conf)` Invoked prior to setting bean properties.
`void` | `setDate(PreparedStatement stmnt, int idx, Date val, Calendar cal, Column col)` Set the given value as a parameter to the statement.
`void` | `setDate(PreparedStatement stmnt, int idx, Date val, Column col)` Set the given value as a parameter to the statement.
`void` | `setDouble(PreparedStatement stmnt, int idx, double val, Column col)` Set the given value as a parameter to the statement.
`void` | `setFloat(PreparedStatement stmnt, int idx, float val, Column col)` Set the given value as a parameter to the statement.
`void` | `setInt(PreparedStatement stmnt, int idx, int val, Column col)` Set the given value as a parameter to the statement.
`void` | `setJoinSyntax(String syntax)` Set the name of the join syntax to use: sql92, traditional, database
`void` | `setLocale(PreparedStatement stmnt, int idx, Locale val, Column col)` Set the given value as a parameter to the statement.
`void` | `setLong(PreparedStatement stmnt, int idx, long val, Column col)` Set the given value as a parameter to the statement.
`void` | `setNull(PreparedStatement stmnt, int idx, int colType, Column col)` Set the given value as a parameters to the statement.
`void` | `setNumber(PreparedStatement stmnt, int idx, Number num, Column col)` Set the given value as a parameter to the statement.
`void` | `setObject(PreparedStatement stmnt, int idx, Object val, int colType, Column col)` Set the given value as a parameters to the statement.
`void` | `setRef(PreparedStatement stmnt, int idx, Ref val, Column col)` Set the given value as a parameter to the statement.
`void` | `setShort(PreparedStatement stmnt, int idx, short val, Column col)` Set the given value as a parameter to the statement.
`void` | `setString(PreparedStatement stmnt, int idx, String val, Column col)` Set the given value as a parameter to the statement.
`void` | `setTime(PreparedStatement stmnt, int idx, Time val, Calendar cal, Column col)` Set the given value as a parameter to the statement.
`void` | `setTimestamp(PreparedStatement stmnt, int idx, Timestamp val, Calendar cal, Column col)` Set the given value as a parameter to the statement.
`void` | `setTyped(PreparedStatement stmnt, int idx, Object val, Column col, int type, JDBCStore store)` Set a column value into a prepared statement.
`void` | `setUnknown(PreparedStatement stmnt, int idx, Object val, Column col)` Set a completely unknown parameter into a prepared statement.
`protected static String` | `shorten(String name, int targetLength)` Shorten the specified name to the specified target name.
`void` | `startConfiguration()` Invoked before bean property configuration is begun on this object.
`protected void` | `storageWarning(Object orig, Object converted)` Warn that a particular value could not be stored precisely.
`void` | `substring(SQLBuffer buf, FilterValue str, FilterValue start, FilterValue end)` Invoke this database's substring function.
`boolean` | `supportsDeleteAction(int action)` Whether this database supports the given foreign key delete action.
`boolean` | `supportsLocking(Select sel)` Returns true if a "FOR UPDATE" clause can be used for the specified Select object.
`boolean` | `supportsRandomAccessResultSet(Select sel, boolean forUpdate)` Return false if the given select requires a forward-only result set.
`boolean` | `supportsUpdateAction(int action)` Whether this database supports the given foreign key update action.
`protected SQLBuffer` | `toBulkOperation(ClassMapping mapping, Select sel, JDBCStore store, Object[] params, Map updateParams)` Returns the SQL for a bulk operation, either a DELETE or an UPDATE.
`SQLBuffer` | `toDelete(ClassMapping mapping, Select sel, JDBCStore store, Object[] params)` Create a DELETE statement for the specified Select.
`SQLBuffer` | `toNativeJoin(Join join)` Use the given join instance to create SQL joining its tables in the database's native syntax.
`protected SQLBuffer` | `toOperation(String op, SQLBuffer selects, SQLBuffer from, SQLBuffer where, SQLBuffer group, SQLBuffer having, SQLBuffer order, boolean distinct, boolean forUpdate, long start, long end)` Return the SQL for the given selecting operation.
`SQLBuffer` | `toSelect(Select sel, boolean forUpdate, JDBCFetchConfiguration fetch)` Create a SELECT statement in the proper join syntax for the given instance.
`SQLBuffer` | `toSelect(SQLBuffer selects, JDBCFetchConfiguration fetch, SQLBuffer from, SQLBuffer where, SQLBuffer group, SQLBuffer having, SQLBuffer order, boolean distinct, boolean forUpdate, long start, long end)` Combine the given components into a SELECT statement.
`SQLBuffer` | `toSelectCount(Select sel)` Create a SELECT COUNT statement in the proper join syntax for the given instance.
`SQLBuffer` | `toSQL92Join(Join join, boolean forUpdate, boolean first)` Use the given join instance to create SQL joining its tables in the SQL92 style.
`SQLBuffer` | `toTraditionalJoin(Join join)` Use the given join instance to create SQL joining its tables in the traditional style.
`SQLBuffer` | `toUpdate(ClassMapping mapping, Select sel, JDBCStore store, Object[] params, Map updates)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### VENDOR_OTHER

    public static final String VENDOR_OTHER

See Also:
  Constant Field Values

### VENDOR_DATADIRECT

    public static final String VENDOR_DATADIRECT

See Also:
  Constant Field Values

### SCHEMA_CASE_UPPER

    public static final String SCHEMA_CASE_UPPER

See Also:
  Constant Field Values

### SCHEMA_CASE_LOWER

    public static final String SCHEMA_CASE_LOWER

See Also:
  Constant Field Values

### SCHEMA_CASE_PRESERVE

    public static final String SCHEMA_CASE_PRESERVE

See Also:
  Constant Field Values

### CONS_NAME_BEFORE

    public static final String CONS_NAME_BEFORE

See Also:
  Constant Field Values

### CONS_NAME_MID

    public static final String CONS_NAME_MID

See Also:
  Constant Field Values

### CONS_NAME_AFTER

    public static final String CONS_NAME_AFTER

See Also:
  Constant Field Values

### RANGE_POST_SELECT

    protected static final int RANGE_POST_SELECT

See Also:
  Constant Field Values

### RANGE_PRE_DISTINCT

    protected static final int RANGE_PRE_DISTINCT

See Also:
  Constant Field Values

### RANGE_POST_DISTINCT

    protected static final int RANGE_POST_DISTINCT

See Also:
  Constant Field Values

### RANGE_POST_LOCK

    protected static final int RANGE_POST_LOCK

See Also:
  Constant Field Values

### NANO

    protected static final int NANO

See Also:
  Constant Field Values

### MICRO

    protected static final int MICRO

See Also:
  Constant Field Values

### MILLI

    protected static final int MILLI

See Also:
  Constant Field Values

### CENTI

    protected static final int CENTI

See Also:
  Constant Field Values

### DECI

    protected static final int DECI

See Also:
  Constant Field Values

### SEC

    protected static final int SEC

See Also:
  Constant Field Values

### NAME_ANY

    protected static final int NAME_ANY

See Also:
  Constant Field Values

### NAME_TABLE

    protected static final int NAME_TABLE

See Also:
  Constant Field Values

### NAME_SEQUENCE

    protected static final int NAME_SEQUENCE

See Also:
  Constant Field Values

### platform

    public String platform

### driverVendor

    public String driverVendor

### catalogSeparator

    public String catalogSeparator

### createPrimaryKeys

    public boolean createPrimaryKeys

### constraintNameMode

    public String constraintNameMode

### maxTableNameLength

    public int maxTableNameLength

### maxColumnNameLength

    public int maxColumnNameLength

### maxConstraintNameLength

    public int maxConstraintNameLength

### maxIndexNameLength

    public int maxIndexNameLength

### maxIndexesPerTable

    public int maxIndexesPerTable

### supportsForeignKeys

    public boolean supportsForeignKeys

### supportsTimestampNanos

    public boolean supportsTimestampNanos

### supportsUniqueConstraints

    public boolean supportsUniqueConstraints

### supportsDeferredConstraints

    public boolean supportsDeferredConstraints

### supportsRestrictDeleteAction

    public boolean supportsRestrictDeleteAction

### supportsCascadeDeleteAction

    public boolean supportsCascadeDeleteAction

### supportsNullDeleteAction

    public boolean supportsNullDeleteAction

### supportsDefaultDeleteAction

    public boolean supportsDefaultDeleteAction

### supportsRestrictUpdateAction

    public boolean supportsRestrictUpdateAction

### supportsCascadeUpdateAction

    public boolean supportsCascadeUpdateAction

### supportsNullUpdateAction

    public boolean supportsNullUpdateAction

### supportsDefaultUpdateAction

    public boolean supportsDefaultUpdateAction

### supportsAlterTableWithAddColumn

    public boolean supportsAlterTableWithAddColumn

### supportsAlterTableWithDropColumn

    public boolean supportsAlterTableWithDropColumn

### reservedWords

    public String reservedWords

### systemSchemas

    public String systemSchemas

### systemTables

    public String systemTables

### fixedSizeTypeNames

    public String fixedSizeTypeNames

### schemaCase

    public String schemaCase

### validationSQL

    public String validationSQL

### closePoolSQL

    public String closePoolSQL

### initializationSQL

    public String initializationSQL

### joinSyntax

    public int joinSyntax

### outerJoinClause

    public String outerJoinClause

### innerJoinClause

    public String innerJoinClause

### crossJoinClause

    public String crossJoinClause

### requiresConditionForCrossJoin

    public boolean requiresConditionForCrossJoin

### forUpdateClause

    public String forUpdateClause

### tableForUpdateClause

    public String tableForUpdateClause

### distinctCountColumnSeparator

    public String distinctCountColumnSeparator

### supportsSelectForUpdate

    public boolean supportsSelectForUpdate

### supportsLockingWithDistinctClause

    public boolean supportsLockingWithDistinctClause

### supportsLockingWithMultipleTables

    public boolean supportsLockingWithMultipleTables

### supportsLockingWithOrderClause

    public boolean supportsLockingWithOrderClause

### supportsLockingWithOuterJoin

    public boolean supportsLockingWithOuterJoin

### supportsLockingWithInnerJoin

    public boolean supportsLockingWithInnerJoin

### supportsLockingWithSelectRange

    public boolean supportsLockingWithSelectRange

### supportsQueryTimeout

    public boolean supportsQueryTimeout

### simulateLocking

    public boolean simulateLocking

### supportsSubselect

    public boolean supportsSubselect

### supportsCorrelatedSubselect

    public boolean supportsCorrelatedSubselect

### supportsHaving

    public boolean supportsHaving

### supportsSelectStartIndex

    public boolean supportsSelectStartIndex

### supportsSelectEndIndex

    public boolean supportsSelectEndIndex

### rangePosition

    public int rangePosition

### requiresAliasForSubselect

    public boolean requiresAliasForSubselect

### allowsAliasInBulkClause

    public boolean allowsAliasInBulkClause

### supportsMultipleNontransactionalResultSets

    public boolean supportsMultipleNontransactionalResultSets

### searchStringEscape

    public String searchStringEscape

### requiresCastForMathFunctions

    public boolean requiresCastForMathFunctions

### requiresCastForComparisons

    public boolean requiresCastForComparisons

### supportsModOperator

    public boolean supportsModOperator

### castFunction

    public String castFunction

### toLowerCaseFunction

    public String toLowerCaseFunction

### toUpperCaseFunction

    public String toUpperCaseFunction

### stringLengthFunction

    public String stringLengthFunction

### bitLengthFunction

    public String bitLengthFunction

### trimLeadingFunction

    public String trimLeadingFunction

### trimTrailingFunction

    public String trimTrailingFunction

### trimBothFunction

    public String trimBothFunction

### concatenateFunction

    public String concatenateFunction

### concatenateDelimiter

    public String concatenateDelimiter

### substringFunctionName

    public String substringFunctionName

### currentDateFunction

    public String currentDateFunction

### currentTimeFunction

    public String currentTimeFunction

### currentTimestampFunction

    public String currentTimestampFunction

### dropTableSQL

    public String dropTableSQL

### storageLimitationsFatal

    public boolean storageLimitationsFatal

### storeLargeNumbersAsStrings

    public boolean storeLargeNumbersAsStrings

### storeCharsAsNumbers

    public boolean storeCharsAsNumbers

### useGetBytesForBlobs

    public boolean useGetBytesForBlobs

### useSetBytesForBlobs

    public boolean useSetBytesForBlobs

### useGetObjectForBlobs

    public boolean useGetObjectForBlobs

### useGetStringForClobs

    public boolean useGetStringForClobs

### useSetStringForClobs

    public boolean useSetStringForClobs

### maxEmbeddedBlobSize

    public int maxEmbeddedBlobSize

### maxEmbeddedClobSize

    public int maxEmbeddedClobSize

### datePrecision

    public int datePrecision

### characterColumnSize

    public int characterColumnSize

### arrayTypeName

    public String arrayTypeName

### bigintTypeName

    public String bigintTypeName

### binaryTypeName

    public String binaryTypeName

### bitTypeName

    public String bitTypeName

### blobTypeName

    public String blobTypeName

### booleanTypeName

    public String booleanTypeName

### charTypeName

    public String charTypeName

### clobTypeName

    public String clobTypeName

### dateTypeName

    public String dateTypeName

### decimalTypeName

    public String decimalTypeName

### distinctTypeName

    public String distinctTypeName

### doubleTypeName

    public String doubleTypeName

### floatTypeName

    public String floatTypeName

### integerTypeName

    public String integerTypeName

### javaObjectTypeName

    public String javaObjectTypeName

### longVarbinaryTypeName

    public String longVarbinaryTypeName

### longVarcharTypeName

    public String longVarcharTypeName

### nullTypeName

    public String nullTypeName

### numericTypeName

    public String numericTypeName

### otherTypeName

    public String otherTypeName

### realTypeName

    public String realTypeName

### refTypeName

    public String refTypeName

### smallintTypeName

    public String smallintTypeName

### structTypeName

    public String structTypeName

### timeTypeName

    public String timeTypeName

### timestampTypeName

    public String timestampTypeName

### tinyintTypeName

    public String tinyintTypeName

### varbinaryTypeName

    public String varbinaryTypeName

### varcharTypeName

    public String varcharTypeName

### useSchemaName

    public boolean useSchemaName

### tableTypes

    public String tableTypes

### supportsSchemaForGetTables

    public boolean supportsSchemaForGetTables

### supportsSchemaForGetColumns

    public boolean supportsSchemaForGetColumns

### supportsNullTableForGetColumns

    public boolean supportsNullTableForGetColumns

### supportsNullTableForGetPrimaryKeys

    public boolean supportsNullTableForGetPrimaryKeys

### supportsNullTableForGetIndexInfo

    public boolean supportsNullTableForGetIndexInfo

### supportsNullTableForGetImportedKeys

    public boolean supportsNullTableForGetImportedKeys

### useGetBestRowIdentifierForPrimaryKeys

    public boolean useGetBestRowIdentifierForPrimaryKeys

### requiresAutoCommitForMetaData

    public boolean requiresAutoCommitForMetaData

### maxAutoAssignNameLength

    public int maxAutoAssignNameLength

### autoAssignClause

    public String autoAssignClause

### autoAssignTypeName

    public String autoAssignTypeName

### supportsAutoAssign

    public boolean supportsAutoAssign

### lastGeneratedKeyQuery

    public String lastGeneratedKeyQuery

### nextSequenceQuery

    public String nextSequenceQuery

### conf

    protected JDBCConfiguration conf

### log

    protected Log log

### connected

    protected boolean connected

### reservedWordSet

    protected final Set reservedWordSet

### systemSchemaSet

    protected final Set systemSchemaSet

### systemTableSet

    protected final Set systemTableSet

### fixedSizeTypeNameSet

    protected final Set fixedSizeTypeNameSet

Constructor Detail

### DBDictionary

    public DBDictionary()

Method Detail

### connectedConfiguration

    public void connectedConfiguration(Connection conn)
                                throws SQLException

  This method is called when the dictionary first sees any connection. It is used to initialize dictionary metadata if needed. If you override this method, be sure to call `super.connectedConfiguration`.

  Throws:
    `SQLException`

### getArray

    public Array getArray(ResultSet rs,
                          int column)
                   throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getAsciiStream

    public InputStream getAsciiStream(ResultSet rs,
                                      int column)
                               throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getBigDecimal

    public BigDecimal getBigDecimal(ResultSet rs,
                                    int column)
                             throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getNumber

    public Number getNumber(ResultSet rs,
                            int column)
                     throws SQLException

  Returns the specified column value as an unknown numeric type; we try from the most generic to the least generic.

  Throws:
    `SQLException`

### getBigInteger

    public BigInteger getBigInteger(ResultSet rs,
                                    int column)
                             throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getBinaryStream

    public InputStream getBinaryStream(ResultSet rs,
                                       int column)
                                throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getBlob

    public Blob getBlob(ResultSet rs,
                        int column)
                 throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getBlobObject

    public Object getBlobObject(ResultSet rs,
                                int column,
                                JDBCStore store)
                         throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getBoolean

    public boolean getBoolean(ResultSet rs,
                              int column)
                       throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getByte

    public byte getByte(ResultSet rs,
                        int column)
                 throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getBytes

    public byte[] getBytes(ResultSet rs,
                           int column)
                    throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getCalendar

    public Calendar getCalendar(ResultSet rs,
                                int column)
                         throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type. Converts the date from a `Timestamp` by default.

  Throws:
    `SQLException`

### getChar

    public char getChar(ResultSet rs,
                        int column)
                 throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getCharacterStream

    public Reader getCharacterStream(ResultSet rs,
                                     int column)
                              throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getClob

    public Clob getClob(ResultSet rs,
                        int column)
                 throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getClobString

    public String getClobString(ResultSet rs,
                                int column)
                         throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getDate

    public Date getDate(ResultSet rs,
                        int column)
                 throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type. Converts the date from a `Timestamp` by default.

  Throws:
    `SQLException`

### getDate

    public Date getDate(ResultSet rs,
                        int column,
                        Calendar cal)
                 throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getDouble

    public double getDouble(ResultSet rs,
                            int column)
                     throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getFloat

    public float getFloat(ResultSet rs,
                          int column)
                   throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getInt

    public int getInt(ResultSet rs,
                      int column)
               throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getLocale

    public Locale getLocale(ResultSet rs,
                            int column)
                     throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getLong

    public long getLong(ResultSet rs,
                        int column)
                 throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getObject

    public Object getObject(ResultSet rs,
                            int column,
                            Map map)
                     throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getRef

    public Ref getRef(ResultSet rs,
                      int column,
                      Map map)
               throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getShort

    public short getShort(ResultSet rs,
                          int column)
                   throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getString

    public String getString(ResultSet rs,
                            int column)
                     throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getTime

    public Time getTime(ResultSet rs,
                        int column,
                        Calendar cal)
                 throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### getTimestamp

    public Timestamp getTimestamp(ResultSet rs,
                                  int column,
                                  Calendar cal)
                           throws SQLException

  Convert the specified column of the SQL ResultSet to the proper java type.

  Throws:
    `SQLException`

### setArray

    public void setArray(PreparedStatement stmnt,
                         int idx,
                         Array val,
                         Column col)
                  throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setAsciiStream

    public void setAsciiStream(PreparedStatement stmnt,
                               int idx,
                               InputStream val,
                               int length,
                               Column col)
                        throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setBigDecimal

    public void setBigDecimal(PreparedStatement stmnt,
                              int idx,
                              BigDecimal val,
                              Column col)
                       throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setBigInteger

    public void setBigInteger(PreparedStatement stmnt,
                              int idx,
                              BigInteger val,
                              Column col)
                       throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setBinaryStream

    public void setBinaryStream(PreparedStatement stmnt,
                                int idx,
                                InputStream val,
                                int length,
                                Column col)
                         throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setBlob

    public void setBlob(PreparedStatement stmnt,
                        int idx,
                        Blob val,
                        Column col)
                 throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setBlobObject

    public void setBlobObject(PreparedStatement stmnt,
                              int idx,
                              Object val,
                              Column col,
                              JDBCStore store)
                       throws SQLException

  Set the given value as a parameter to the statement. Uses the `serialize(java.lang.Object, org.apache.openjpa.jdbc.kernel.JDBCStore)` method to serialize the value.

  Throws:
    `SQLException`

### setBoolean

    public void setBoolean(PreparedStatement stmnt,
                           int idx,
                           boolean val,
                           Column col)
                    throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setByte

    public void setByte(PreparedStatement stmnt,
                        int idx,
                        byte val,
                        Column col)
                 throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setBytes

    public void setBytes(PreparedStatement stmnt,
                         int idx,
                         byte[] val,
                         Column col)
                  throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setChar

    public void setChar(PreparedStatement stmnt,
                        int idx,
                        char val,
                        Column col)
                 throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setCharacterStream

    public void setCharacterStream(PreparedStatement stmnt,
                                   int idx,
                                   Reader val,
                                   int length,
                                   Column col)
                            throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setClob

    public void setClob(PreparedStatement stmnt,
                        int idx,
                        Clob val,
                        Column col)
                 throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setClobString

    public void setClobString(PreparedStatement stmnt,
                              int idx,
                              String val,
                              Column col)
                       throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setDate

    public void setDate(PreparedStatement stmnt,
                        int idx,
                        Date val,
                        Column col)
                 throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setDate

    public void setDate(PreparedStatement stmnt,
                        int idx,
                        Date val,
                        Calendar cal,
                        Column col)
                 throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setCalendar

    public void setCalendar(PreparedStatement stmnt,
                            int idx,
                            Calendar val,
                            Column col)
                     throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setDouble

    public void setDouble(PreparedStatement stmnt,
                          int idx,
                          double val,
                          Column col)
                   throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setFloat

    public void setFloat(PreparedStatement stmnt,
                         int idx,
                         float val,
                         Column col)
                  throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setInt

    public void setInt(PreparedStatement stmnt,
                       int idx,
                       int val,
                       Column col)
                throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setLong

    public void setLong(PreparedStatement stmnt,
                        int idx,
                        long val,
                        Column col)
                 throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setLocale

    public void setLocale(PreparedStatement stmnt,
                          int idx,
                          Locale val,
                          Column col)
                   throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setNull

    public void setNull(PreparedStatement stmnt,
                        int idx,
                        int colType,
                        Column col)
                 throws SQLException

  Set the given value as a parameters to the statement. The column type will come from `Types`.

  Throws:
    `SQLException`

### setNumber

    public void setNumber(PreparedStatement stmnt,
                          int idx,
                          Number num,
                          Column col)
                   throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setObject

    public void setObject(PreparedStatement stmnt,
                          int idx,
                          Object val,
                          int colType,
                          Column col)
                   throws SQLException

  Set the given value as a parameters to the statement. The column type will come from `Types`.

  Throws:
    `SQLException`

### setRef

    public void setRef(PreparedStatement stmnt,
                       int idx,
                       Ref val,
                       Column col)
                throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setShort

    public void setShort(PreparedStatement stmnt,
                         int idx,
                         short val,
                         Column col)
                  throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setString

    public void setString(PreparedStatement stmnt,
                          int idx,
                          String val,
                          Column col)
                   throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setTime

    public void setTime(PreparedStatement stmnt,
                        int idx,
                        Time val,
                        Calendar cal,
                        Column col)
                 throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setTimestamp

    public void setTimestamp(PreparedStatement stmnt,
                             int idx,
                             Timestamp val,
                             Calendar cal,
                             Column col)
                      throws SQLException

  Set the given value as a parameter to the statement.

  Throws:
    `SQLException`

### setTyped

    public void setTyped(PreparedStatement stmnt,
                         int idx,
                         Object val,
                         Column col,
                         int type,
                         JDBCStore store)
                  throws SQLException

  Set a column value into a prepared statement.

  Parameters:
    `stmnt` - the prepared statement to parameterize
    `idx` - the index of the parameter in the prepared statement
    `val` - the value of the column
    `col` - the column being set
    `type` - the field mapping type code for the value
    `store` - the store manager for the current context
  Throws:
    `SQLException`

### setUnknown

    public void setUnknown(PreparedStatement stmnt,
                           int idx,
                           Object val,
                           Column col)
                    throws SQLException

  Set a completely unknown parameter into a prepared statement.

  Throws:
    `SQLException`

### serialize

    public byte[] serialize(Object val,
                            JDBCStore store)
                     throws SQLException

  Return the serialized bytes for the given object.

  Throws:
    `SQLException`

### putBytes

    public void putBytes(Object blob,
                         byte[] data)
                  throws SQLException

  Invoke the JDK 1.4 `setBytes` method on the given BLOB object.

  Throws:
    `SQLException`

### putString

    public void putString(Object clob,
                          String data)
                   throws SQLException

  Invoke the JDK 1.4 `setString` method on the given CLOB object.

  Throws:
    `SQLException`

### putChars

    public void putChars(Object clob,
                         char[] data)
                  throws SQLException

  Invoke the JDK 1.4 `setCharacterStream` method on the given CLOB object.

  Throws:
    `SQLException`

### storageWarning

    protected void storageWarning(Object orig,
                                  Object converted)

  Warn that a particular value could not be stored precisely. After the first warning for a particular type, messages will be turned into trace messages.

### getJDBCType

    public int getJDBCType(int metaTypeCode,
                           boolean lob)

  Return the preferred `Types` constant for the given `JavaTypes` or `JavaSQLTypes` constant.

### getPreferredType

    public int getPreferredType(int type)

  Return the preferred `Types` type for the given one. Returns the given type by default.

### getTypeName

    public String getTypeName(Column col)

  Return the preferred database type name for the given column's type from `Types`.

### getTypeName

    public String getTypeName(int type)

  Returns the type name for the specific constant as defined by `Types`.

  Parameters:
    `type` - the type
  Returns:
    the name for the type

### appendSize

    protected String appendSize(Column col,
                                String typeName)

  Helper method to add size properties to the specified type. If present, the string "{0}" will be replaced with the size definition; otherwise the size definition will be appended to the type name. If your database has column types that don't allow size definitions, override this method to return the unaltered type name for columns of those types (or add the type names to the `fixedSizeTypeNameSet`).

### setJoinSyntax

    public void setJoinSyntax(String syntax)

  Set the name of the join syntax to use: sql92, traditional, database

### getPlaceholderValueString

    public String getPlaceholderValueString(Column col)

  Return a SQL string to act as a placeholder for the given column.

### toSelectCount

    public SQLBuffer toSelectCount(Select sel)

  Create a SELECT COUNT statement in the proper join syntax for the given instance.

### toDelete

    public SQLBuffer toDelete(ClassMapping mapping,
                              Select sel,
                              JDBCStore store,
                              Object[] params)

  Create a DELETE statement for the specified Select. If the database does not support the bulk delete statement (such as cases where a subselect is required and the database doesn't support subselects), this method should return null.

### toUpdate

    public SQLBuffer toUpdate(ClassMapping mapping,
                              Select sel,
                              JDBCStore store,
                              Object[] params,
                              Map updates)

### toBulkOperation

    protected SQLBuffer toBulkOperation(ClassMapping mapping,
                                        Select sel,
                                        JDBCStore store,
                                        Object[] params,
                                        Map updateParams)

  Returns the SQL for a bulk operation, either a DELETE or an UPDATE.

  Parameters:
    `mapping` - the mappng against which we are operating
    `sel` - the Select that will constitute the WHERE clause
    `store` - the current store
    `updateParams` - the Map that holds the update parameters; a null value indicates that this is a delete operation
  Returns:
    the SQLBuffer for the update, or null if it is not possible to perform the bulk update

### appendUpdates

    protected void appendUpdates(Select sel,
                                 JDBCStore store,
                                 SQLBuffer sql,
                                 Object[] params,
                                 Map updateParams,
                                 boolean allowAlias)

### toSelect

    public SQLBuffer toSelect(Select sel,
                              boolean forUpdate,
                              JDBCFetchConfiguration fetch)

  Create a SELECT statement in the proper join syntax for the given instance.

### getFrom

    protected SQLBuffer getFrom(Select sel,
                                boolean forUpdate)

  Return the portion of the select statement between the FROM keyword and the WHERE keyword.

### getFromSelect

    protected SQLBuffer getFromSelect(Select sel,
                                      boolean forUpdate)

  Return the FROM clause for a select that selects from a tmp table created by an inner select.

### getWhere

    protected SQLBuffer getWhere(Select sel,
                                 boolean forUpdate)

  Return the WHERE portion of the select statement, or null if no where conditions.

### toTraditionalJoin

    public SQLBuffer toTraditionalJoin(Join join)

  Use the given join instance to create SQL joining its tables in the traditional style.

### toSQL92Join

    public SQLBuffer toSQL92Join(Join join,
                                 boolean forUpdate,
                                 boolean first)

  Use the given join instance to create SQL joining its tables in the SQL92 style.

### toNativeJoin

    public SQLBuffer toNativeJoin(Join join)

  Use the given join instance to create SQL joining its tables in the database's native syntax. Throws an exception by default.

### canOuterJoin

    public boolean canOuterJoin(int syntax,
                                ForeignKey fk)

  Returns if the given foreign key can be eagerly loaded using other joins.

### toSelect

    public SQLBuffer toSelect(SQLBuffer selects,
                              JDBCFetchConfiguration fetch,
                              SQLBuffer from,
                              SQLBuffer where,
                              SQLBuffer group,
                              SQLBuffer having,
                              SQLBuffer order,
                              boolean distinct,
                              boolean forUpdate,
                              long start,
                              long end)

  Combine the given components into a SELECT statement.

### getSelectOperation

    public String getSelectOperation(JDBCFetchConfiguration fetch)

  Return the "SELECT" operation clause, adding any available hints, etc.

### toOperation

    protected SQLBuffer toOperation(String op,
                                    SQLBuffer selects,
                                    SQLBuffer from,
                                    SQLBuffer where,
                                    SQLBuffer group,
                                    SQLBuffer having,
                                    SQLBuffer order,
                                    boolean distinct,
                                    boolean forUpdate,
                                    long start,
                                    long end)

  Return the SQL for the given selecting operation.

### appendSelectRange

    protected void appendSelectRange(SQLBuffer buf,
                                     long start,
                                     long end)

  If this dictionary can select ranges, use this method to append the range SQL.

### getSelects

    protected SQLBuffer getSelects(Select sel,
                                   boolean distinctIdentifiers,
                                   boolean forUpdate)

  Return the portion of the select statement between the SELECT keyword and the FROM keyword.

### supportsLocking

    public boolean supportsLocking(Select sel)

  Returns true if a "FOR UPDATE" clause can be used for the specified Select object.

### supportsRandomAccessResultSet

    public boolean supportsRandomAccessResultSet(Select sel,
                                                 boolean forUpdate)

  Return false if the given select requires a forward-only result set.

### assertSupport

    public void assertSupport(boolean feature,
                              String property)

  Assert that the given dictionary flag is true. If it is not true, throw an error saying that the given setting needs to return true for the current operation to work.

### substring

    public void substring(SQLBuffer buf,
                          FilterValue str,
                          FilterValue start,
                          FilterValue end)

  Invoke this database's substring function.

  Parameters:
    `buf` - the SQL buffer to write the substring invocation to
    `str` - a query value representing the target string
    `start` - a query value representing the start index
    `end` - a query value representing the end index, or null for none

### indexOf

    public void indexOf(SQLBuffer buf,
                        FilterValue str,
                        FilterValue find,
                        FilterValue start)

  Invoke this database's indexOf function.

  Parameters:
    `buf` - the SQL buffer to write the indexOf invocation to
    `str` - a query value representing the target string
    `find` - a query value representing the search string
    `start` - a query value representing the start index, or null to start at the beginning

### mathFunction

    public void mathFunction(SQLBuffer buf,
                             String op,
                             FilterValue lhs,
                             FilterValue rhs)

  Append the numeric parts of a mathematical function.

  Parameters:
    `buf` - the SQL buffer to write the math function
    `op` - the mathematical operation to perform
    `lhs` - the left hand side of the math function
    `rhs` - the right hand side of the math function

### comparison

    public void comparison(SQLBuffer buf,
                           String op,
                           FilterValue lhs,
                           FilterValue rhs)

  Append a comparison.

  Parameters:
    `buf` - the SQL buffer to write the comparison
    `op` - the comparison operation to perform
    `lhs` - the left hand side of the comparison
    `rhs` - the right hand side of the comparison

### appendNumericCast

    protected void appendNumericCast(SQLBuffer buf,
                                     FilterValue val)

  Append SQL for the given numeric value to the buffer, casting as needed.

### appendCast

    public void appendCast(SQLBuffer buf,
                           FilterValue val,
                           int type)

  Cast the specified value to the specified type.

  Parameters:
    `buf` - the buffer to append the cast to
    `val` - the value to cast
    `type` - the type of the case, e.g. `Types.NUMERIC`

### refSchemaComponents

    public void refSchemaComponents(Table table)

  Increment the reference count of any table components that this dictionary adds that are not used by mappings. Does nothing by default.

### getFullName

    public String getFullName(Table table,
                              boolean logical)

  Returns the full name of the table, including the schema (delimited by `catalogSeparator`).

### getFullName

    public String getFullName(Index index)

  Returns the full name of the index, including the schema (delimited by the result of `catalogSeparator`).

### getFullName

    public String getFullName(Sequence seq)

  Returns the full name of the sequence, including the schema (delimited by the result of `catalogSeparator`).

### getValidTableName

    public String getValidTableName(String name,
                                    Schema schema)

  Make any necessary changes to the given table name to make it valid for the current DB.

### getValidSequenceName

    public String getValidSequenceName(String name,
                                       Schema schema)

  Make any necessary changes to the given sequence name to make it valid for the current DB.

### getValidColumnName

    public String getValidColumnName(String name,
                                     Table table)

  Make any necessary changes to the given column name to make it valid for the current DB.

### getValidPrimaryKeyName

    public String getValidPrimaryKeyName(String name,
                                         Table table)

  Make any necessary changes to the given primary key name to make it valid for the current DB.

### getValidForeignKeyName

    public String getValidForeignKeyName(String name,
                                         Table table,
                                         Table toTable)

  Make any necessary changes to the given foreign key name to make it valid for the current DB.

### getValidIndexName

    public String getValidIndexName(String name,
                                    Table table)

  Make any necessary changes to the given index name to make it valid for the current DB.

### getValidUniqueName

    public String getValidUniqueName(String name,
                                     Table table)

  Make any necessary changes to the given unique constraint name to make it valid for the current DB.

### shorten

    protected static String shorten(String name,
                                    int targetLength)

  Shorten the specified name to the specified target name. This will be done by first stripping out the vowels, and then removing characters from the middle of the word until it reaches the target length.

### makeNameValid

    protected String makeNameValid(String name,
                                   NameSet set,
                                   int maxLen,
                                   int nameType)

  Shortens the given name to the given maximum length, then checks that it is not a reserved word. If it is reserved, appends a "0". If the name conflicts with an existing schema component, the last character is replace with '0', then '1', etc. Note that the given max len may be 0 if the database metadata is incomplete.

### getCreateTableSQL

    public String[] getCreateTableSQL(Table table)

  Return a series of SQL statements to create the given table, complete with columns. Indexes and constraints will be created separately.

### getDropTableSQL

    public String[] getDropTableSQL(Table table)

  Return a series of SQL statements to drop the given table. Indexes will be dropped separately. Returns `DROP TABLE <table name>` by default.

### getCreateSequenceSQL

    public String[] getCreateSequenceSQL(Sequence seq)

  Return a series of SQL statements to create the given sequence. Returns `CREATE SEQUENCE <sequence name>[ START WITH <start>] [ INCREMENT BY <increment>]` by default.

### getDropSequenceSQL

    public String[] getDropSequenceSQL(Sequence seq)

  Return a series of SQL statements to drop the given sequence. Returns `DROP SEQUENCE <sequence name>` by default.

### getCreateIndexSQL

    public String[] getCreateIndexSQL(Index index)

  Return a series of SQL statements to create the given index. Returns `CREATE [UNIQUE] INDEX <index name> ON <table name> (<col list>)` by default.

### getDropIndexSQL

    public String[] getDropIndexSQL(Index index)

  Return a series of SQL statements to drop the given index. Returns `DROP INDEX <index name>` by default.

### getAddColumnSQL

    public String[] getAddColumnSQL(Column column)

  Return a series of SQL statements to add the given column to its table. Return an empty array if operation not supported. Returns `ALTER TABLE <table name> ADD (<col dec>)` by default.

### getDropColumnSQL

    public String[] getDropColumnSQL(Column column)

  Return a series of SQL statements to drop the given column from its table. Return an empty array if operation not supported. Returns `ALTER TABLE <table name> DROP COLUMN <col name>` by default.

### getAddPrimaryKeySQL

    public String[] getAddPrimaryKeySQL(PrimaryKey pk)

  Return a series of SQL statements to add the given primary key to its table. Return an empty array if operation not supported. Returns `ALTER TABLE <table name> ADD <pk cons sql >` by default.

### getDropPrimaryKeySQL

    public String[] getDropPrimaryKeySQL(PrimaryKey pk)

  Return a series of SQL statements to drop the given primary key from its table. Return an empty array if operation not supported. Returns `ALTER TABLE <table name> DROP CONSTRAINT <pk name>` by default.

### getAddForeignKeySQL

    public String[] getAddForeignKeySQL(ForeignKey fk)

  Return a series of SQL statements to add the given foreign key to its table. Return an empty array if operation not supported. Returns `ALTER TABLE <table name> ADD <fk cons sql >` by default.

### getDropForeignKeySQL

    public String[] getDropForeignKeySQL(ForeignKey fk)

  Return a series of SQL statements to drop the given foreign key from its table. Return an empty array if operation not supported. Returns `ALTER TABLE <table name> DROP CONSTRAINT <fk name>` by default.

### getDeclareColumnSQL

    protected String getDeclareColumnSQL(Column col,
                                         boolean alter)

  Return the declaration SQL for the given column. This method is used for each column from within `getCreateTableSQL(org.apache.openjpa.jdbc.schema.Table)` and `getAddColumnSQL(org.apache.openjpa.jdbc.schema.Column)`.

### getPrimaryKeyConstraintSQL

    protected String getPrimaryKeyConstraintSQL(PrimaryKey pk)

  Return the declaration SQL for the given primary key. This method is used from within `getCreateTableSQL(org.apache.openjpa.jdbc.schema.Table)` and `getAddPrimaryKeySQL(org.apache.openjpa.jdbc.schema.PrimaryKey)`. Returns `CONSTRAINT <pk name> PRIMARY KEY (<col list>)` by default.

### getForeignKeyConstraintSQL

    protected String getForeignKeyConstraintSQL(ForeignKey fk)

  Return the declaration SQL for the given foreign key, or null if it is not supported. This method is used from within `getCreateTableSQL(org.apache.openjpa.jdbc.schema.Table)` and `getAddForeignKeySQL(org.apache.openjpa.jdbc.schema.ForeignKey)`. Returns `CONSTRAINT <cons name> FOREIGN KEY (<col list>) REFERENCES <foreign table> (<col list>) [ON DELETE <action>] [ON UPDATE <action>]` by default.

### supportsDeleteAction

    public boolean supportsDeleteAction(int action)

  Whether this database supports the given foreign key delete action.

### supportsUpdateAction

    public boolean supportsUpdateAction(int action)

  Whether this database supports the given foreign key update action.

### getUniqueConstraintSQL

    protected String getUniqueConstraintSQL(Unique unq)

  Return the declaration SQL for the given unique constraint. This method is used from within `getCreateTableSQL(org.apache.openjpa.jdbc.schema.Table)`. Returns `CONSTRAINT <name> UNIQUE (<col list>)` by default.

### isSystemTable

    public boolean isSystemTable(String name,
                                 String schema,
                                 boolean targetSchema)

  This method is used to filter system tables from database metadata. Return true if the given table name represents a system table that should not appear in the schema definition. By default, returns true only if the given table is in the internal list of system tables, or if the given schema is in the list of system schemas and is not the target schema.

  Parameters:
    `name` - the table name
    `schema` - the table schema; may be null
    `targetSchema` - if true, then the given schema was listed by the user as one of his schemas

### isSystemIndex

    public boolean isSystemIndex(String name,
                                 Table table)

  This method is used to filter system indexes from database metadata. Return true if the given index name represents a system index that should not appear in the schema definition. Returns false by default.

  Parameters:
    `name` - the index name
    `table` - the index table

### isSystemSequence

    public boolean isSystemSequence(String name,
                                    String schema,
                                    boolean targetSchema)

  This method is used to filter system sequences from database metadata. Return true if the given sequence represents a system sequence that should not appear in the schema definition. Returns true if system schema by default.

  Parameters:
    `name` - the table name
    `schema` - the table schema; may be null
    `targetSchema` - if true, then the given schema was listed by the user as one of his schemas

### getTables

    public Table[] getTables(DatabaseMetaData meta,
                             String catalog,
                             String schemaName,
                             String tableName,
                             Connection conn)
                      throws SQLException

  Reflect on the schema to find tables matching the given name pattern.

  Throws:
    `SQLException`

### newTable

    protected Table newTable(ResultSet tableMeta)
                      throws SQLException

  Create a new table from the information in the schema metadata.

  Throws:
    `SQLException`

### getSequences

    public Sequence[] getSequences(DatabaseMetaData meta,
                                   String catalog,
                                   String schemaName,
                                   String sequenceName,
                                   Connection conn)
                            throws SQLException

  Reflect on the schema to find sequences matching the given name pattern. Returns an empty array by default, as there is no standard way to retrieve a list of sequences.

  Throws:
    `SQLException`

### newSequence

    protected Sequence newSequence(ResultSet sequenceMeta)
                            throws SQLException

  Create a new sequence from the information in the schema metadata.

  Throws:
    `SQLException`

### getSequencesSQL

    protected String getSequencesSQL(String schemaName,
                                     String sequenceName)

  Return the SQL needed to select the list of sequences.

### getColumns

    public Column[] getColumns(DatabaseMetaData meta,
                               String catalog,
                               String schemaName,
                               String tableName,
                               String columnName,
                               Connection conn)
                        throws SQLException

  Reflect on the schema to find columns matching the given table and column patterns.

  Throws:
    `SQLException`

### newColumn

    protected Column newColumn(ResultSet colMeta)
                        throws SQLException

  Create a new column from the information in the schema metadata.

  Throws:
    `SQLException`

### getPrimaryKeys

    public PrimaryKey[] getPrimaryKeys(DatabaseMetaData meta,
                                       String catalog,
                                       String schemaName,
                                       String tableName,
                                       Connection conn)
                                throws SQLException

  Reflect on the schema to find primary keys for the given table pattern.

  Throws:
    `SQLException`

### getPrimaryKeysFromGetPrimaryKeys

    protected PrimaryKey[] getPrimaryKeysFromGetPrimaryKeys(DatabaseMetaData meta,
                                                            String catalog,
                                                            String schemaName,
                                                            String tableName,
                                                            Connection conn)
                                                     throws SQLException

  Reflect on the schema to find primary keys for the given table pattern.

  Throws:
    `SQLException`

### newPrimaryKey

    protected PrimaryKey newPrimaryKey(ResultSet pkMeta)
                                throws SQLException

  Create a new primary key from the information in the schema metadata.

  Throws:
    `SQLException`

### getPrimaryKeysFromBestRowIdentifier

    protected PrimaryKey[] getPrimaryKeysFromBestRowIdentifier(DatabaseMetaData meta,
                                                               String catalog,
                                                               String schemaName,
                                                               String tableName,
                                                               Connection conn)
                                                        throws SQLException

  Reflect on the schema to find primary keys for the given table pattern.

  Throws:
    `SQLException`

### getIndexInfo

    public Index[] getIndexInfo(DatabaseMetaData meta,
                                String catalog,
                                String schemaName,
                                String tableName,
                                boolean unique,
                                boolean approx,
                                Connection conn)
                         throws SQLException

  Reflect on the schema to find indexes matching the given table pattern.

  Throws:
    `SQLException`

### newIndex

    protected Index newIndex(ResultSet idxMeta)
                      throws SQLException

  Create a new index from the information in the schema metadata.

  Throws:
    `SQLException`

### getImportedKeys

    public ForeignKey[] getImportedKeys(DatabaseMetaData meta,
                                        String catalog,
                                        String schemaName,
                                        String tableName,
                                        Connection conn)
                                 throws SQLException

  Reflect on the schema to return foreign keys imported by the given table pattern.

  Throws:
    `SQLException`

### newForeignKey

    protected ForeignKey newForeignKey(ResultSet fkMeta)
                                throws SQLException

  Create a new foreign key from the information in the schema metadata.

  Throws:
    `SQLException`

### getTableNameForMetadata

    protected String getTableNameForMetadata(String tableName)

  Returns the table name that will be used for obtaining information from `DatabaseMetaData`.

### getSchemaNameForMetadata

    protected String getSchemaNameForMetadata(String schemaName)

  Returns the schema name that will be used for obtaining information from `DatabaseMetaData`.

### getCatalogNameForMetadata

    protected String getCatalogNameForMetadata(String catalogName)

  Returns the catalog name that will be used for obtaining information from `DatabaseMetaData`.

### getColumnNameForMetadata

    protected String getColumnNameForMetadata(String columnName)

  Returns the column name that will be used for obtaining information from `DatabaseMetaData`.

### convertSchemaCase

    protected String convertSchemaCase(String objectName)

  Convert the specified schema name to a name that the database will be able to understand.

### getGeneratedKey

    public Object getGeneratedKey(Column col,
                                  Connection conn)
                           throws SQLException

  Return the last generated value for the given column. Throws an exception by default if `lastGeneratedKeyQuery` is null.

  Throws:
    `SQLException`

### getGeneratedKeySequenceName

    protected String getGeneratedKeySequenceName(Column col)

  Return the sequence name used by databases for the given autoassigned column. This is only used by databases that require an explicit name to be used for auto-assign support.

### setConfiguration

    public void setConfiguration(Configuration conf)

  Description copied from interface: `Configurable`
  Invoked prior to setting bean properties.

  Specified by:
    `setConfiguration` in interface `Configurable`

### startConfiguration

    public void startConfiguration()

  Description copied from interface: `Configurable`
  Invoked before bean property configuration is begun on this object.

  Specified by:
    `startConfiguration` in interface `Configurable`

### endConfiguration

    public void endConfiguration()

  Description copied from interface: `Configurable`
  Invoked upon completion of bean property configuration for this object.

  Specified by:
    `endConfiguration` in interface `Configurable`

### decorate

    public Connection decorate(Connection conn)
                        throws SQLException

  Decorate the given connection if needed. Some databases require special handling for JDBC bugs. This implementation issues any `initializationSQL` that has been set for the dictionary but does not decoreate the connection.

  Specified by:
    `decorate` in interface `ConnectionDecorator`
  Throws:
    `SQLException`

### handleWarning

    public void handleWarning(SQLWarning warning)
                       throws SQLException

  Implementation of the `LoggingConnectionDecorator.SQLWarningHandler` interface that allows customization of the actions to perform when a `SQLWarning` occurs at any point on a `Connection`, `Statement`, or `ResultSet`. This method may be used determine those warnings the application wants to consider critical failures, and throw the warning in those cases. By default, this method does nothing.

  Specified by:
    `handleWarning` in interface `LoggingConnectionDecorator.SQLWarningHandler`
  Throws:
    `SQLException`
  See Also:
    `LoggingConnectionDecorator.setWarningAction(java.lang.String)`, `LoggingConnectionDecorator.setWarningHandler(org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.SQLWarningHandler)`

### newStoreException

    public OpenJPAException newStoreException(String msg,
                                              SQLException[] causes,
                                              Object failed)

  Return a new exception that wraps `causes`. However, the details of exactly what type of exception is returned can be determined by the implementation. This may take into account DB-specific exception information in `causes`.

### closeDataSource

    public void closeDataSource(DataSource dataSource)

  Closes the specified `DataSource` and releases any resources associated with it.

  Parameters:
    `dataSource` - the DataSource to close

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2006 Apache Software Foundation. All Rights Reserved.