SolarMetric Kodo JDO 3.0.3 generated on February 20 2004

kodo.jdbc.sql
Class MySQLDictionary

java.lang.Object
  |
  +--kodo.jdbc.sql.DBDictionary
        |
        +--kodo.jdbc.sql.MySQLDictionary
All Implemented Interfaces:
Configurable, ConnectionDecorator

public class MySQLDictionary
extends DBDictionary

Dictionary for MySQL.


Fields inherited from class kodo.jdbc.sql.DBDictionary
CENTI, DECI, MICRO, MILLI, NANO, SCHEMA_CASE_DEFAULT, SCHEMA_CASE_LOWER, SCHEMA_CASE_PRESERVE, SCHEMA_CASE_UPPER, SEC
 
Constructor Summary
MySQLDictionary()
           
 
Method Summary
 String[] getAddPrimaryKeySQL(PrimaryKey pk)
          MySQL requires that a column be declared NOT NULL before it can be made a primary key.
 Object getBlobObject(ResultSet rs, int column)
          MySQL deserializes on getObject.
 String[] getCreateTableSQL(Table table)
          Return a series of SQL statements to create the given table, complete with columns.
 String[] getDropIndexSQL(Index index)
          Return a series of SQL statements to drop the given index.
 int getPreferredType(int type)
          Return the preferred Types type for the given one.
 Collection getReservedKeywords()
          Fields named "int" might be converted into default column names of "INT1", which MySQL has a problem with.
 String getTableType()
          Return the MySQL table type to use when creating tables.
 void setTableType(String tableType)
          Set the MySQL table type to use when creating tables.
 boolean supportsForeignKey(ForeignKey fk)
          MySQL does not support composite foreign keys.
protected  boolean supportsSizeInColumnDefinition(Column col, String name)
          Returns true if a schema definition statement supports appending the size after the column type.
 
Methods inherited from class kodo.jdbc.sql.DBDictionary
addSystemSchema, addSystemTable, appendSize, canBatch, canLock, configureReflectedColumn, convertSchemaCase, decorate, endConfiguration, getAddColumnSQL, getAddForeignKeySQL, getArray, getAsciiStream, getAutoIncrementClause, getAutoIncrementTypeName, getBatchLimit, getBatchParameterLimit, getBigDecimal, getBigInteger, getBigintTypeName, getBinaryStream, getBinaryTypeName, getBitTypeName, getBlob, getBlobStream, getBlobTypeName, getBoolean, getByte, getBytes, getCatalogNameForMetadata, getCatalogSeparator, getChar, getCharacterStream, getCharTypeName, getClob, getClobString, getClobTypeName, getColumnNameForMetadata, getColumns, getConfiguration, getConstraintNameBeforeDeclaration, getCreateIndexSQL, getCreatePrimaryKeys, getDate, getDate, getDatePrecision, getDateTypeName, getDBMetaData, getDecimalTypeName, getDeclareColumnSQL, getDistinctTypeName, getDouble, getDoubleTypeName, getDropColumnSQL, getDropForeignKeySQL, getDropPrimaryKeySQL, getDropTableSQL, getFloat, getFloatTypeName, getForeignKeyActionName, getForeignKeyConstraintSQL, getForUpdateClause, getFrom, getFullName, getFullName, getGeneratedKey, getImportedKeys, getIndexInfo, getInitializationSQL, getInt, getIntegerTypeName, getJavaObjectTypeName, getJDBCType, getJoinSyntax, getJoinSyntaxConstant, getLastGeneratedKeyQuery, getLastGeneratedKeyQuery, getLocale, getLong, getLongVarbinaryTypeName, getLongVarcharTypeName, getMaxCharacterFieldLength, getMaxColumnNameLength, getMaxForeignKeyNameLength, getMaxIndexesPerTable, getMaxIndexNameLength, getMaxKeyNameLength, getMaxPrimaryKeyNameLength, getMaxTableNameLength, getNullTypeName, getNumericTypeName, getObject, getOrderings, getOtherTypeName, getPlatform, getPrimaryKeyConstraintSQL, getPrimaryKeys, getPrimaryKeysFromBestRowIdentifier, getPrimaryKeysFromGetPrimaryKeys, getRealTypeName, getRef, getRefTypeName, getReservedWords, getSchemaCase, getSchemaNameForMetadata, getSelects, getShort, getSimulateLocking, getSizeClause, getSmallintTypeName, getStorageLimitationsFatal, getStoreCharsAsNumbers, getStoreLargeNumbersAsStrings, getString, getStructTypeName, getSupportsDeferredConstraints, getSupportsForeignKeys, getSupportsLockingWithDistinctClause, getSupportsLockingWithInnerJoin, getSupportsLockingWithMultipleTables, getSupportsLockingWithOrderClause, getSupportsLockingWithOuterJoin, getSupportsMultipleNontransactionalResultSets, getSupportsNullTableForGetColumns, getSupportsNullTableForGetImportedKeys, getSupportsNullTableForGetIndexInfo, getSupportsNullTableForGetPrimaryKeys, getSupportsSchemaForGetColumns, getSupportsSchemaForGetTables, getSupportsSelectForUpdate, getSystemSchemas, getSystemTables, getTableForUpdateClause, getTableNameForMetadata, getTables, getTableTypes, getTime, getTimestamp, getTimestampTypeName, getTimeTypeName, getTinyintTypeName, getTypeName, getUseGetBestRowIdentifierForPrimaryKeys, getUseGetBytesForBlobs, getUseGetObjectForBlobs, getUseSchemaName, getUseSetBytesForBlobs, getUseStringsForClobs, getValidationSQL, getValidColumnName, getValidForeignKeyName, getValidIndexName, getValidPrimaryKeyName, getValidTableName, getVarbinaryTypeName, getVarcharTypeName, getWhere, isReserved, isSupported, isSystemIndex, isSystemTable, makeNameValid, maxKeyNameLength, newColumnInfo, newForeignKeyInfo, newIndexInfo, newPrimaryKeyInfo, newTableInfo, refSchemaComponents, replaceMapping, replaceMapping, replaceMappingFactory, replaceSchemaFactory, replaceSize, serialize, setArray, setAsciiStream, setAutoIncrementClause, setAutoIncrementTypeName, setBatchLimit, setBatchParameterLimit, setBigDecimal, setBigInteger, setBigintTypeName, setBinaryStream, setBinaryTypeName, setBitTypeName, setBlob, setBlobObject, setBlobTypeName, setBoolean, setByte, setBytes, setCatalogSeparator, setChar, setCharacterStream, setCharTypeName, setClob, setClobString, setClobTypeName, setConfiguration, setCreatePrimaryKeys, setDate, setDate, setDateTypeName, setDBMetaData, setDecimalTypeName, setDistinctTypeName, setDouble, setDoubleTypeName, setFloat, setFloatTypeName, setForUpdateClause, setInitializationSQL, setInt, setIntegerTypeName, setJavaObjectTypeName, setJoinSyntax, setJoinSyntaxConstant, setLastGeneratedKeyQuery, setLocale, setLong, setLongVarbinaryTypeName, setLongVarcharTypeName, setMaxIndexesPerTable, setMaxKeyNameLength, setNull, setNullTypeName, setNumericTypeName, setObject, setOtherTypeName, setPlatform, setRealTypeName, setRef, setRefTypeName, setReservedWords, setSchemaCase, setShort, setSimulateLocking, setSmallintTypeName, setStorageLimitationsFatal, setStoreCharsAsNumbers, setStoreLargeNumbersAsStrings, setString, setStructTypeName, setSupportsDeferredConstraints, setSupportsForeignKeys, setSupportsLockingWithDistinctClause, setSupportsLockingWithInnerJoin, setSupportsLockingWithMultipleTables, setSupportsLockingWithOrderClause, setSupportsLockingWithOuterJoin, setSupportsMultipleNontransactionalResultSets, setSupportsNullTableForGetColumns, setSupportsNullTableForGetImportedKeys, setSupportsNullTableForGetIndexInfo, setSupportsNullTableForGetPrimaryKeys, setSupportsSchemaForGetColumns, setSupportsSchemaForGetTables, setSupportsSelectForUpdate, setSystemSchemas, setSystemTables, setTableForUpdateClause, setTableTypes, setTime, setTimestamp, setTimestampTypeName, setTimeTypeName, setTinyintTypeName, setup, setUseGetBestRowIdentifierForPrimaryKeys, setUseGetBytesForBlobs, setUseGetObjectForBlobs, setUseSchemaName, setUseSetBytesForBlobs, setUseStringsForClobs, setValidationSQL, setVarbinaryTypeName, setVarcharTypeName, startConfiguration, storageWarning, supportsAutoIncrement, supportsSelectForUpdate, supportsTotalCountsForBatch, supportsUpdateCountsForBatch, toNativeJoin, toSelect, toSelect, toSQL92Join, toTraditionalJoin, warnSupportedDictionary
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MySQLDictionary

public MySQLDictionary()
Method Detail

getTableType

public String getTableType()
Return the MySQL table type to use when creating tables.

setTableType

public void setTableType(String tableType)
Set the MySQL table type to use when creating tables. Defaults to null, in which case the default table type will be used.

getPreferredType

public int getPreferredType(int type)
Description copied from class: DBDictionary
Return the preferred Types type for the given one. Returns the given type by default.
Overrides:
getPreferredType in class DBDictionary

supportsSizeInColumnDefinition

protected boolean supportsSizeInColumnDefinition(Column col,
                                                 String name)
Description copied from class: DBDictionary
Returns true if a schema definition statement supports appending the size after the column type. For example some databases allow FLOAT(20), but other databases disallow INT8(16).
Overrides:
supportsSizeInColumnDefinition in class DBDictionary

getCreateTableSQL

public String[] getCreateTableSQL(Table table)
Description copied from class: DBDictionary
Return a series of SQL statements to create the given table, complete with columns. Indexes and constraints will be created separately.
Overrides:
getCreateTableSQL in class DBDictionary

getDropIndexSQL

public String[] getDropIndexSQL(Index index)
Description copied from class: DBDictionary
Return a series of SQL statements to drop the given index. Returns DROP INDEX <index name> by default.
Overrides:
getDropIndexSQL in class DBDictionary

getAddPrimaryKeySQL

public String[] getAddPrimaryKeySQL(PrimaryKey pk)
MySQL requires that a column be declared NOT NULL before it can be made a primary key.
Overrides:
getAddPrimaryKeySQL in class DBDictionary

getReservedKeywords

public Collection getReservedKeywords()
Fields named "int" might be converted into default column names of "INT1", which MySQL has a problem with.
Overrides:
getReservedKeywords in class DBDictionary

supportsForeignKey

public boolean supportsForeignKey(ForeignKey fk)
MySQL does not support composite foreign keys.
Overrides:
supportsForeignKey in class DBDictionary

getBlobObject

public Object getBlobObject(ResultSet rs,
                            int column)
                     throws SQLException
MySQL deserializes on getObject.
Overrides:
getBlobObject in class DBDictionary

SolarMetric Kodo JDO 3.0.3 generated on February 20 2004

Copyright 2001,2002 SolarMetric, Inc. All Rights Reserved.