|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.ddlutils.PlatformInfo
Conatains information about the database platform such as supported features and native type mappings.
Constructor Summary | |
PlatformInfo()
Creates a new platform info object. |
Method Summary | |
void |
addDefaultSize(int jdbcTypeCode,
int defaultSize)
Adds a default size for the given jdbc type. |
void |
addDefaultSize(String jdbcTypeName,
int defaultSize)
Adds a default size for the given jdbc type. |
void |
addNativeTypeMapping(int jdbcTypeCode,
String nativeType)
Adds a mapping from jdbc type to database-native type. |
void |
addNativeTypeMapping(int jdbcTypeCode,
String nativeType,
int targetJdbcTypeCode)
Adds a mapping from jdbc type to database-native type. |
void |
addNativeTypeMapping(String jdbcTypeName,
String nativeType)
Adds a mapping from jdbc type to database-native type. |
void |
addNativeTypeMapping(String jdbcTypeName,
String nativeType,
String targetJdbcTypeName)
Adds a mapping from jdbc type to database-native type. |
boolean |
getCanReadAutoIncrementStatus()
Determines whether the platform is able to read the auto-increment status for columns from an existing database. |
String |
getCommentPrefix()
Returns the string that denotes the beginning of a comment. |
String |
getCommentSuffix()
Returns the string that denotes the end of a comment. |
Integer |
getDefaultSize(int jdbcTypeCode)
Returns the default size value for the given type, if any. |
String |
getDelimiterToken()
Returns the text that is used to delimit identifiers (eg. |
int |
getMaxIdentifierLength()
Returns the maximum length of identifiers that this database allows. |
String |
getNativeType(int typeCode)
Returns the database-native type for the given type code. |
String |
getSqlCommandDelimiter()
Returns the text separating individual sql commands. |
int |
getTargetJdbcType(int typeCode)
Returns the jdbc type corresponding to the native type that is used for the given jdbc type. |
String |
getValueQuoteToken()
Returns the text that is used for for quoting values (e.g. |
boolean |
hasNullDefault(int sqlTypeCode)
Determines whether the native type for the given sql type code (one of the Types constants) has a null default value on this platform. |
boolean |
hasPrecisionAndScale(int sqlTypeCode)
Determines whether the native type for the given sql type code (one of the Types constants) has precision and scale specifications on
this platform. |
boolean |
hasSize(int sqlTypeCode)
Determines whether the native type for the given sql type code (one of the Types constants) has a size specification on this platform. |
boolean |
isCaseSensitive()
Determines whether the database has case sensitive identifiers. |
boolean |
isCommentsSupported()
Determines whether the database supports comments. |
boolean |
isEmbeddedForeignKeysNamed()
Returns whether embedded foreign key constraints should have a name. |
boolean |
isForeignKeysEmbedded()
Determines whether foreign key constraints are embedded in the create table clause or as seperate alter table statements. |
boolean |
isIdentitySpecUsesDefaultValue()
Determines whether the auto-increment specification uses the DEFAULT value of the column definition. |
boolean |
isIndicesEmbedded()
Determines whether the indices are embedded in the create table clause or as seperate statements. |
boolean |
isPrimaryKeyEmbedded()
Determines whether primary key constraints are embedded in the create table clause or as seperate alter table statements. |
boolean |
isRequiringNullAsDefaultValue()
Determines whether a NULL needs to be explicitly stated when the column has no specified default value. |
boolean |
isReturningDefaultValueForRequired()
Determines whether the platform returns synthetic default values (e.g. |
boolean |
isReturningSystemIndices()
Determines whether database-generated indices for primary and foreign keys are returned when reading a model from a database. |
boolean |
isSupportingDefaultValuesForLongTypes()
Determines whether default values can be specified for LONGVARCHAR/LONGVARBINARY columns. |
boolean |
isSupportingDelimitedIdentifiers()
Determines whether delimited identifiers are supported. |
boolean |
isSupportingNonPKIdentityColumns()
Determines whether non-primary key columns can be auto-incrementing (IDENTITY columns). |
boolean |
isSupportingNonUniqueIndices()
Determines whether non-unique indices are supported. |
boolean |
isUseAlterTableForDrop()
Determines whether an ALTER TABLE statement shall be used for dropping indices or constraints. |
boolean |
isUseDelimitedIdentifiers()
Determines whether delimited identifiers are used or normal SQL92 identifiers (which may only contain alphanumerical characters and the underscore, must start with a letter and cannot be a reserved keyword). |
void |
setCanReadAutoIncrementStatus(boolean canReadAutoIncrementStatus)
Specifies whether the platform is able to read the auto-increment status for columns from an existing database. |
void |
setCaseSensitive(boolean caseSensitive)
Specifies whether the database has case sensitive identifiers. |
void |
setCommentPrefix(String commentPrefix)
Sets the text that starts a comment. |
void |
setCommentsSupported(boolean commentsSupported)
Specifies whether comments are supported by the database. |
void |
setCommentSuffix(String commentSuffix)
Sets the text that ends a comment. |
void |
setDelimiterToken(String delimiterToken)
Sets the text that is used to delimit identifiers (eg. |
void |
setEmbeddedForeignKeysNamed(boolean embeddedForeignKeysNamed)
Specifies whether embedded foreign key constraints should be named. |
void |
setForeignKeysEmbedded(boolean foreignKeysEmbedded)
Specifies whether foreign key constraints are embedded in the create table clause or as seperate alter table statements. |
void |
setHasNullDefault(int sqlTypeCode,
boolean hasNullDefault)
Specifies whether the native type for the given sql type code (one of the Types constants) has a null default value on this platform. |
void |
setHasPrecisionAndScale(int sqlTypeCode,
boolean hasPrecisionAndScale)
Specifies whether the native type for the given sql type code (one of the Types constants) has precision and scale specifications on
this platform. |
void |
setHasSize(int sqlTypeCode,
boolean hasSize)
Specifies whether the native type for the given sql type code (one of the Types constants) has a size specification on this platform. |
void |
setIdentitySpecUsesDefaultValue(boolean identitySpecUsesDefaultValue)
Specifies whether the auto-increment specification uses the DEFAULT value of the column definition. |
void |
setIndicesEmbedded(boolean indicesEmbedded)
Specifies whether indices are embedded in the create table clause or as seperate alter table statements. |
void |
setMaxIdentifierLength(int maxIdentifierLength)
Sets the maximum length of identifiers that this database allows. |
void |
setPrimaryKeyEmbedded(boolean primaryKeyEmbedded)
Specifies whether the primary key constraints are embedded in the create table clause or as seperate alter table statements. |
void |
setRequiringNullAsDefaultValue(boolean requiresNullAsDefaultValue)
Specifies whether a NULL needs to be explicitly stated when the column has no specified default value. |
void |
setReturningDefaultValueForRequired(boolean returningDefaultValue)
Specifies whether the platform returns synthetic default values (e.g. |
void |
setReturningSystemIndices(boolean returningSystemIndices)
Specifies whether database-generated indices for primary and foreign keys are returned when reading a model from a database. |
void |
setSqlCommandDelimiter(String sqlCommandDelimiter)
Sets the text separating individual sql commands. |
void |
setSupportingDefaultValuesForLongTypes(boolean isSupported)
Specifies whether default values can be specified for LONGVARCHAR/LONGVARBINARY columns. |
void |
setSupportingDelimitedIdentifiers(boolean areSupported)
Specifies whether delimited identifiers are supported. |
void |
setSupportingNonPKIdentityColumns(boolean supportingNonPKIdentityColumns)
Specifies whether non-primary key columns can be auto-incrementing (IDENTITY columns). |
void |
setSupportingNonUniqueIndices(boolean supportingNonUniqueIndices)
Specifies whether non-unique indices are supported. |
void |
setUseAlterTableForDrop(boolean useAlterTableForDrop)
Specifies whether an ALTER TABLE statement shall be used for dropping indices or constraints. |
void |
setUseDelimitedIdentifiers(boolean useDelimitedIdentifiers)
Determines whether delimited identifiers are used or normal SQL92 identifiers. |
void |
setValueQuoteToken(String valueQuoteChar)
Sets the text that is used for for quoting values (e.g. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public PlatformInfo()
Method Detail |
public boolean isRequiringNullAsDefaultValue()
true
if NULL must be written for empty default valuespublic void setRequiringNullAsDefaultValue(boolean requiresNullAsDefaultValue)
requiresNullAsDefaultValue
- Whether NULL must be written for empty
default valuespublic boolean isSupportingDefaultValuesForLongTypes()
true
if default values are allowedpublic void setSupportingDefaultValuesForLongTypes(boolean isSupported)
isSupported
- true
if default values are supportedpublic boolean isPrimaryKeyEmbedded()
true
if pk constraints are embeddedpublic void setPrimaryKeyEmbedded(boolean primaryKeyEmbedded)
primaryKeyEmbedded
- Whether pk constraints are embeddedpublic boolean isForeignKeysEmbedded()
true
if fk constraints are embeddedpublic void setForeignKeysEmbedded(boolean foreignKeysEmbedded)
foreignKeysEmbedded
- Whether fk constraints are embeddedpublic boolean isSupportingNonUniqueIndices()
true
if non-unique indices are supportedpublic void setSupportingNonUniqueIndices(boolean supportingNonUniqueIndices)
supportingNonUniqueIndices
- true
if non-unique indices
are supportedpublic boolean isIndicesEmbedded()
true
if indices are embeddedpublic void setIndicesEmbedded(boolean indicesEmbedded)
indicesEmbedded
- Whether indices are embeddedpublic boolean isEmbeddedForeignKeysNamed()
true
if embedded fks have namepublic void setEmbeddedForeignKeysNamed(boolean embeddedForeignKeysNamed)
embeddedForeignKeysNamed
- Whether embedded fks shall have a namepublic boolean isSupportingNonPKIdentityColumns()
true
if normal non-PK columns can be auto-incrementingpublic void setSupportingNonPKIdentityColumns(boolean supportingNonPKIdentityColumns)
supportingNonPKIdentityColumns
- true
if normal non-PK columns can
be auto-incrementingpublic boolean isIdentitySpecUsesDefaultValue()
true
if the auto-increment spec is done via the DEFAULT valuepublic void setIdentitySpecUsesDefaultValue(boolean identitySpecUsesDefaultValue)
identitySpecUsesDefaultValue
- true
if the auto-increment spec is
done via the DEFAULT valuepublic boolean isUseAlterTableForDrop()
true
if ALTER TABLE is requiredpublic void setUseAlterTableForDrop(boolean useAlterTableForDrop)
useAlterTableForDrop
- Whether ALTER TABLE will be usedpublic int getMaxIdentifierLength()
public void setMaxIdentifierLength(int maxIdentifierLength)
maxIdentifierLength
- The maximum identifier length, -1 if unlimitedpublic boolean isCaseSensitive()
true
if case of the the identifiers is importantpublic void setCaseSensitive(boolean caseSensitive)
caseSensitive
- true
if case of the the identifiers is importantpublic boolean isSupportingDelimitedIdentifiers()
true
if delimited identifiers are supportedpublic void setSupportingDelimitedIdentifiers(boolean areSupported)
areSupported
- true
if delimited identifiers are supportedpublic boolean isUseDelimitedIdentifiers()
true
if delimited identifiers are usedpublic void setUseDelimitedIdentifiers(boolean useDelimitedIdentifiers)
useDelimitedIdentifiers
- true
if delimited identifiers are usedpublic String getDelimiterToken()
public void setDelimiterToken(String delimiterToken)
delimiterToken
- The delimiter textpublic String getValueQuoteToken()
public void setValueQuoteToken(String valueQuoteChar)
valueQuoteChar
- The new quote textpublic boolean isCommentsSupported()
true
if comments are supportedpublic void setCommentsSupported(boolean commentsSupported)
commentsSupported
- true
if comments are supportedpublic String getCommentPrefix()
public void setCommentPrefix(String commentPrefix)
commentPrefix
- The new comment prefixpublic String getCommentSuffix()
public void setCommentSuffix(String commentSuffix)
commentSuffix
- The new comment suffixpublic String getSqlCommandDelimiter()
public void setSqlCommandDelimiter(String sqlCommandDelimiter)
sqlCommandDelimiter
- The delimiter textpublic void addNativeTypeMapping(int jdbcTypeCode, String nativeType)
jdbcTypeCode
- The jdbc type code as defined by Types
nativeType
- The native typepublic void addNativeTypeMapping(int jdbcTypeCode, String nativeType, int targetJdbcTypeCode)
jdbcTypeCode
- The jdbc type code as defined by Types
nativeType
- The native typetargetJdbcTypeCode
- The jdbc type code corresponding to the native type
(e.g. when reading the model from the database)public void addNativeTypeMapping(String jdbcTypeName, String nativeType)
Types
via reflection
and is thus safe to use under JDK 1.2/1.3 even with constants defined
only in later Java versions - for these, the method simply will not add
a mapping.
jdbcTypeName
- The jdbc type name, one of the constants defined in
Types
nativeType
- The native typepublic void addNativeTypeMapping(String jdbcTypeName, String nativeType, String targetJdbcTypeName)
Types
via reflection
and is thus safe to use under JDK 1.2/1.3 even with constants defined
only in later Java versions - for these, the method simply will not add
a mapping.
jdbcTypeName
- The jdbc type name, one of the constants defined
in Types
nativeType
- The native typetargetJdbcTypeName
- The jdbc type corresponding to the native type
(e.g. when reading the model from the database)public String getNativeType(int typeCode)
typeCode
- The Types
type code
null
if there isn't one definedpublic int getTargetJdbcType(int typeCode)
BIT
or BOOLEAN
, and the target jdbc type might
be TINYINT
or SMALLINT
.
typeCode
- The Types
type code
public void addDefaultSize(int jdbcTypeCode, int defaultSize)
jdbcTypeCode
- The jdbc type codedefaultSize
- The default sizepublic Integer getDefaultSize(int jdbcTypeCode)
jdbcTypeCode
- The jdbc type code
null
if none is definedpublic void addDefaultSize(String jdbcTypeName, int defaultSize)
jdbcTypeName
- The name of the jdbc type, one of the Types
constantsdefaultSize
- The default sizepublic void setHasNullDefault(int sqlTypeCode, boolean hasNullDefault)
Types
constants) has a null default value on this platform.
sqlTypeCode
- The sql type codehasNullDefault
- true
if the native type has a null default valuepublic boolean hasNullDefault(int sqlTypeCode)
Types
constants) has a null default value on this platform.
sqlTypeCode
- The sql type code
true
if the native type has a null default valuepublic void setHasSize(int sqlTypeCode, boolean hasSize)
Types
constants) has a size specification on this platform.
sqlTypeCode
- The sql type codehasSize
- true
if the native type has a size specificationpublic boolean hasSize(int sqlTypeCode)
Types
constants) has a size specification on this platform.
sqlTypeCode
- The sql type code
true
if the native type has a size specificationpublic void setHasPrecisionAndScale(int sqlTypeCode, boolean hasPrecisionAndScale)
Types
constants) has precision and scale specifications on
this platform.
sqlTypeCode
- The sql type codehasPrecisionAndScale
- true
if the native type has precision and scale specificationspublic boolean hasPrecisionAndScale(int sqlTypeCode)
Types
constants) has precision and scale specifications on
this platform.
sqlTypeCode
- The sql type code
true
if the native type has precision and scale specificationspublic boolean isReturningSystemIndices()
true
if system indices are read from a live databasepublic void setReturningSystemIndices(boolean returningSystemIndices)
returningSystemIndices
- true
if system indices are read from
a live databasepublic boolean isReturningDefaultValueForRequired()
true
if synthetic default values are returned for non-identity
required columnspublic void setReturningDefaultValueForRequired(boolean returningDefaultValue)
returningDefaultValue
- true
if synthetic default values are returned for
non-identity required columnspublic boolean getCanReadAutoIncrementStatus()
true
if the auto-increment status can be determined from an existing
databasepublic void setCanReadAutoIncrementStatus(boolean canReadAutoIncrementStatus)
canReadAutoIncrementStatus
- true
if the auto-increment status can be
determined from an existing database
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |