Available Data Model Properties for JDBC
    • 26 Mar 2024
    • 3 Minutes to read
    • Dark
      Light
    • PDF

    Available Data Model Properties for JDBC

    • Dark
      Light
    • PDF

    Article summary

    ParameterDescription
    Default
    catalog
    See DatabaseMetaData.getTables [1]

    null

     

    schemaPattern
    See DatabaseMetaData.getTables [1]
     null
    tableNamePattern
    See DatabaseMetaData.getTables [1]
     null
    procedureNamePattern
    See DatabaseMetaData.getProcedures [1]
     null
    tableTypes
    Comma separated list - without spaces - of imported table types. See DatabaseMetaData.getTables [1]
     null
    excludeTables
    A case-insensitive regular expression that when matched against a fully qualified table name [2] will exclude it from import.  Applied after table names are retrieved.  Use a negative look-ahead (?!<inclusion pattern>).* to act as an inclusion filter.


     Null
    excludeProcedures
    A case-insensitive regular expression that when matched against a fully qualified procedure name [2] will exclude it from import.  Applied after procedure names are retrieved.  Use a negative look-ahead (?!<inclusion pattern>).* to act as an inclusion filter.
     null
    useFullSchemaName

    When false, directs the importer to drop the source catalog/schema from the object name, so that the fully qualified name will be in the form of <model name>.<table name>

    Note: When false this may lead to objects with duplicate names when importing from multiple schemas, which results in an exception.  This option does not affect the name in source property.

     true
    importKeys

    true to import primary and foreign keys

    Note: Foreign keys to tables that are not imported will be ignored.

     true
    autoCreateUniqueConstraints
    true to create a unique constraint if one is not found for a foreign keys
     true
    importIndexes
    true to import index/unique key/cardinality information
     false
    importApproximateIndexes

    true to import approximate index information.

    See DatabaseMetaData.getIndexInfo [1]

     true
    importProcedures

    true to import procedures and procedure columns.

    Note that it is not always possible to import procedure result set columns due to database limitations. It is also not currently possible to import overloaded procedures.

     false
    widenUnsignedTypes

    true to convert unsigned types to the next widest type. For example SQL Server reports tinyint as an unsigned type.

    With this option enabled, tinyint would be imported as a short instead of a byte.

     true
    quoteNameInSource
    false will override the default and direct the service to create source queries using unquoted identifiers.
     true
    useProcedureSpecificName

    true will allow the import of overloaded procedures (which will normally result in a duplicate procedure error) by using the unique procedure specific name as the service name.

    This option will only work with JDBC 4.0 compatible drivers that report specific names.

     false

     

     useCatalogName

    true will use any non-null/non-empty catalog name as part of the name in source, e.g. "catalog"."schema"."table"."column", and in the service runtime name if useFullSchemaName is also true.

    false will not use the catalog name in either the name in source or the service runtime name. Should be set to false for sources that do not fully support a catalog concept, but return a non-null catalog name in their metadata - such as HSQL.

     true
     useQualifiedName

    true will use name qualification for both the service name and name in source as dictated by the useCatalogName and useFullSchemaName properties.  

    Set to false to disable all qualification for both the service name and the name in source, which effectively ignores the useCatalogName and useFullSchemaName properties.  

    Note: When false this may lead to objects with duplicate names when importing from multiple schemas, which results in an exception.

     true

     

     useAnyIndexCardinality

    true will use the maximum cardinality returned from DatabaseMetaData.getIndexInfo. importKeys or importIndexes needs to be enabled for this setting to have an effect.

    This allows for better stats gathering from sources that don’t support returning a statistical index.

     False
     importStatistics

    true will use database dependent logic to determine the cardinality if none is determined.

    Not yet supported by all database types – currently only supported by Oracle and MySQL.

     False
     importRowIdAsBinary
    true will import RowId columns as varbinary values.
     False

     

    JavaDoc for DatabaseMetaData

    The fully qualified name for exclusion is based upon the settings of the translator and the particulars of the database. All of the applicable name parts used by the translator settings (see useQualifiedName and useCatalogName) including catalog, schema, table will be combined as catalogName.schemaName.tableName with no quoting. For example Oracle does not report a catalog, so the name used with default settings for comparison would be just schemaName.tableName.


    Was this article helpful?