2012-04-13 72 views
1

連接到h2數據庫時,默認搜索路徑設置爲public。 你可以用SET SCHEMA_SEARCH_PATH來改變它。如何查看h2數據庫中的當前模式搜索路徑?

但是,如果您多次改變它,在某個時候您如何查看其當前內容?我不能找到VIEW SCHEMA_SEARCH_PATHSHOW SCHEMA_SEARCH_PATH這樣的命令。

鍵入他們會給我錯誤消息。

回答

2

這是一個黑客位,但你可以使用:

SELECT * FROM INFORMATION_SCHEMA.SESSION_STATE 
WHERE KEY='SCHEMA_SEARCH_PATH' 
+0

這實在是一種技巧,但它的工作相當不錯^^ – Stephan 2012-04-13 13:41:59

0

非黑客攻擊的解決方案: SELECT架構()

+0

我嘗試連接這個url:'jdbc:h2:mem:; INIT = create schema如果不存在po; SCHEMA_SEARCH_PATH = PO,INFORMATION_SCHEMA,PUBLIC'。 'SELECT SCHEMA()'只返回PUBLIC,而Thomas的解決方案打印預期的模式search_path。 ** h2 1.4.193 ** – Stephan 2017-03-01 15:25:58

+0

同意,搜索路徑與當前模式不同,可能包含多個模式。當你執行一些DDL時,當前模式很重要,對於SELECT來說search_path更相關。 – Serge 2017-03-01 21:47:31