0
從一個java代碼中 - 我已經有一個數據庫連接 - 我需要找到連接的默認模式。如何獲取SQL連接的默認模式?
我有以下的代碼,給了我一個該連接的所有模式列表。
rs = transactionManager.getDataSource().getConnection().getMetaData().getSchemas();
while (rs.next()) {
log.debug("The schema is {} and the catalogue is {} ", rs.getString(1), rs.getString(2));
}
但是,我不想列出所有的模式。我需要這個連接的默認模式。
請幫忙。
注1:我使用H2和DB2上的Windows7(開發框)和Linux紅帽(生產箱)
注2:我終於得出結論,這是不可能使用連接對象在Java中找到默認H2和DB2的模式使用相同的代碼。我用一個配置文件解決了這個問題。但是,如果有人可以共享解決方案,我可以回頭重構代碼。
沒有返回「默認」(甚至「當前」模式)的JDBC API。我們需要知道您正在使用哪個DBMS?甲骨文? Postgres的? –
在'H2DB'上,您可以發出以下查詢:SELECT * FROM INFORMATION_SCHEMA.SESSION_STATE WHERE KEY ='SCHEMA_SEARCH_PATH''(請參閱:http://stackoverflow.com/questions/10141739/how-to-view-current-schema-搜索路徑在-A-H2-數據庫)。在DB2'VALUES CURRENT SCHEMA' – Alex
@Alex你應該把答案放在答案的部分,而不是在評論中。 – AngocA