Add support for default SQLite schemas #1201
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
According to SQLite docs, there are at least two schemas supported:
main
andtemp
:Thus, two things need to happen for this JDBC driver to be compatible with SQLite (at least from this feature perspective):
DatabaseMetadata#getSchemas()
must return at least those two schemas (main
andtemp
); hopefully the attached database too, but I am unsure if this is possible to determine at the relevant point in the codeDatabaseMetadata#supportsSchemasInTableDefinitions()
must returntrue
to indicate the consumers the table could be referenced either via its raw name or using a schema prefixCurrently the driver returns an empty result set for the
DatabaseMetadata#getSchemas()
andfalse
forDatabaseMetadata#supportsSchemasInTableDefinitions()
. This breaks some of the consumers (for instance, the applications using 3rd party APIs or the driver directly when trying to determine database schema at runtime).