Class JdbcDatabaseMetaDataCapability
java.lang.Object
net.sf.jsqlparser.util.validation.metadata.AbstractDatabaseMetaDataCapability
net.sf.jsqlparser.util.validation.metadata.JdbcDatabaseMetaDataCapability
- All Implemented Interfaces:
DatabaseMetaDataValidation
,ValidationCapability
Validates against schema by jdbc-metadata in a very basic way with simple
caching and comparing names by
String.equalsIgnoreCase(String)
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final String
private static final Logger
private static final String
private static final String
Fields inherited from class net.sf.jsqlparser.util.validation.metadata.AbstractDatabaseMetaDataCapability
cacheResults, connection, namesLookup, results
Fields inherited from interface net.sf.jsqlparser.util.validation.metadata.DatabaseMetaDataValidation
NAME
-
Constructor Summary
ConstructorsConstructorDescriptionJdbcDatabaseMetaDataCapability
(Connection connection, UnaryOperator<String> namesLookup) JdbcDatabaseMetaDataCapability
(Connection connection, UnaryOperator<String> namesLookup, boolean cacheResults) -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
columnExists
(Map<Named, Boolean> results, Named named) private DatabaseException
createDatabaseException
(String fqn, String type, SQLException e) private boolean
existsFromItem
(Map<Named, Boolean> results, String fqn) protected boolean
jdbcMetadataTables
(Named named, String type) private String[]
splitAndValidateMinMax
(String type, String fqn, int min, int max) Split fqn by "." and validate expected path-elementsprotected boolean
tableExists
(Map<Named, Boolean> results, Named named) protected boolean
viewExists
(Map<Named, Boolean> results, Named named) Methods inherited from class net.sf.jsqlparser.util.validation.metadata.AbstractDatabaseMetaDataCapability
cache, clearCache, constraintExists, databaseExists, exists, getConnection, getNamesLookup, indexExists, isCacheResults, procedureExists, roleExists, schemaExists, unsupported, userExists
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.sf.jsqlparser.util.validation.metadata.DatabaseMetaDataValidation
getErrorMessage, getName, getUnexpectedErrorMessage, validate
Methods inherited from interface net.sf.jsqlparser.util.validation.ValidationCapability
toError, toError
-
Field Details
-
VIEW
- See Also:
-
TABLE
- See Also:
-
COLUMN
- See Also:
-
LOG
-
-
Constructor Details
-
JdbcDatabaseMetaDataCapability
- Parameters:
connection
-namesLookup
- - seeNamesLookup
-
JdbcDatabaseMetaDataCapability
public JdbcDatabaseMetaDataCapability(Connection connection, UnaryOperator<String> namesLookup, boolean cacheResults) - Parameters:
connection
-namesLookup
- - seeNamesLookup
cacheResults
- - whether the results should be cached for later lookups
-
-
Method Details
-
columnExists
- Overrides:
columnExists
in classAbstractDatabaseMetaDataCapability
- Throws:
ValidationException
-
existsFromItem
-
viewExists
- Overrides:
viewExists
in classAbstractDatabaseMetaDataCapability
- Throws:
ValidationException
-
tableExists
- Overrides:
tableExists
in classAbstractDatabaseMetaDataCapability
- Throws:
ValidationException
-
jdbcMetadataTables
- Throws:
ValidationException
-
splitAndValidateMinMax
Split fqn by "." and validate expected path-elements- Parameters:
type
-fqn
-min
-max
-- Returns:
- the fqn-parts
-
createDatabaseException
-