Discussions
Categories
- 196.8K All Categories
- 2.2K Data
- 235 Big Data Appliance
- 1.9K Data Science
- 449.9K Databases
- 221.6K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 31 Multilingual Engine
- 549 MySQL Community Space
- 478 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3K ORDS, SODA & JSON in the Database
- 532 SQLcl
- 4K SQL Developer Data Modeler
- 186.9K SQL & PL/SQL
- 21.3K SQL Developer
- 295.5K Development
- 17 Developer Projects
- 138 Programming Languages
- 292.1K Development Tools
- 104 DevOps
- 3.1K QA/Testing
- 645.9K Java
- 28 Java Learning Subscription
- 37K Database Connectivity
- 154 Java Community Process
- 105 Java 25
- 22.1K Java APIs
- 138.1K Java Development Tools
- 165.3K Java EE (Java Enterprise Edition)
- 17 Java Essentials
- 158 Java 8 Questions
- 85.9K Java Programming
- 79 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.2K Java SE
- 13.8K Java Security
- 203 Java User Groups
- 24 JavaScript - Nashorn
- Programs
- 401 LiveLabs
- 37 Workshops
- 10.2K Software
- 6.7K Berkeley DB Family
- 3.5K JHeadstart
- 5.6K Other Languages
- 2.3K Chinese
- 171 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 230 Portuguese
JDBC API - To get the current catalog/schema of the database

697330
Member Posts: 11
Is there any JDBC API to get the current catalog/schema of the database. The solution needs to be generic so that it can be applied across databases..
For example,
- for Oracle i need to get the current schema of the session
- for SQL Server i need to get the current catalog and schema for the session
....
...
For example,
- for Oracle i need to get the current schema of the session
- for SQL Server i need to get the current catalog and schema for the session
....
...
Tagged:
Answers
-
shankar wrote:No
Is there any JDBC API to get the current catalog/schema of the database. -
Try Connection.getSchema(), getCatalog()
-
[email protected] wrote:There is no Connection.getSchema() - at least not in Java6/JDBC4
Try Connection.getSchema(), getCatalog()
http://download.oracle.com/docs/cd/E17409_01/javase/6/docs/api/java/sql/Connection.html
And I'm not sure if getCatalog() works correctly in SQL Server when you have changed the current database with "USE ..." -
FOR SQLSServer, setCatalog(...) is the same as executing "USE ...".
Sorry, my mistake on the getSchema(). I was thinking of
DatabaseMetaData.getUserName() (which should be a connection method IMHO).
Try that. -
Thanks castorp and Joe...
I think the solution doesn't seem to solve the problem that i have...
The problem statement is...
I have retrieved the whole set of tables from the database(can be oracle,mysql,sqlsever,db2.. etc).. The tables are represented along with catalog/schema or both based on the support provided by the database.. I need to strip of the catalog/schema from the tables which are related to the current user/schema/catalog.. All other tables(related to other schemas) should remain the same... For this i need to get the current schema/catalog for the connected database...
So for example,
- for Oracle i need to get the current schema of the session
- for SQL Server i need to get the current catalog and schema for the session -
Just in case, someone reads this old post in looking for a solution. This post helped me: How to find currentSchema from JDBC application - DB2 Database
Execute "values current schema" SQL statement with the connection. The resultset will have the current schema.
Best wishes,
Matthias.
-
Thanks Matthias, but please don't revive long dead threads.
Mod: locking this zombie.
This discussion has been closed.