When importing metadata from a JDBC data source, the following properties can be configured to control how tables, procedures, and other objects are discovered and represented in the model. These properties help you tailor the import process to match your data source structure and naming conventions, avoid unnecessary or duplicate objects, and fine-tune schema handling for compatibility with downstream services.
You can configure these properties in the Translator or Importer settings depending on your environment. Most properties map directly to the standard JDBC DatabaseMetaData API, enabling consistent behavior across different relational databases.
Available Data Model Properties
| Parameter | Description | Default | |
|---|---|---|---|
catalog |
Catalog name to filter results. Maps to DatabaseMetaData.getTables. |
null |
|
schemaPattern |
Schema pattern to match during table or procedure import. Uses SQL pattern matching. | null |
|
tableNamePattern |
Table name pattern to match during import. | null |
|
procedureNamePattern |
Procedure name pattern to match during import. Maps to DatabaseMetaData.getProcedures. |
null |
|
tableTypes |
Comma-separated list (no spaces) of table types to import (e.g., TABLE,VIEW). Maps to DatabaseMetaData.getTables. |
null |
|
excludeTables |
Case-insensitive regular expression used to exclude fully qualified table names from import. Applied after table names are retrieved. Use negative lookahead (e.g., `(?!(sales | products)).*`) to include specific tables. | null |
excludeProcedures |
Case-insensitive regular expression used to exclude fully qualified procedure names. Similar behavior to excludeTables. |
null |
|
useFullSchemaName |
When false, removes catalog/schema from the object name, resulting in a flat structure like <model>.<table>. May cause name collisions when importing from multiple schemas. This setting does not affect the "name in source" property. |
true |
|
importKeys |
Enables importing of primary and foreign keys. Foreign keys referencing tables not included in the import are ignored. | true |
|
autoCreateUniqueConstraints |
Automatically creates a unique constraint if one is missing for a foreign key. | true |
|
importIndexes |
Enables importing index, unique key, and cardinality information. | false |
|
importApproximateIndexes |
Enables importing approximate index statistics. Applies when importIndexes is true. |
true |
|
importProcedures |
Enables importing of stored procedures and their columns. Limitations may apply based on DB support (e.g., result sets, overloaded procedures). | false |
|
widenUnsignedTypes |
Converts unsigned numeric types to the next wider signed type (e.g., tinyint → short). Helps ensure compatibility in systems without native support for unsigned types. |
true |
|
quoteNameInSource |
When false, generates SQL identifiers without quoting, which may result in compatibility issues with case-sensitive names. |
true |
|
useProcedureSpecificName |
Allows importing overloaded procedures using their unique specific names. Only supported by JDBC 4.0+ drivers that report procedureSpecificName. |
false |
|
useCatalogName |
Controls whether catalog names are included in the source and service names. Use false for databases that return non-null catalog values but don’t fully support the catalog concept (e.g., HSQL). |
true |
|
useQualifiedName |
Enables or disables full name qualification based on useCatalogName and useFullSchemaName. If false, these settings are ignored. May lead to duplicate names across schemas. |
true |
|
useAnyIndexCardinality |
Uses the highest cardinality returned by DatabaseMetaData.getIndexInfo. Requires importKeys or importIndexes to be enabled. Improves cardinality stats in sources lacking statistical indexes. |
false |
|
importStatistics |
Enables use of DB-specific logic to determine cardinality when not otherwise available. Currently supported only for Oracle and MySQL. | false |
|
importRowIdAsBinary |
When true, imports RowId columns as varbinary. |
false |