2013-02-17 74 views
3

表V $參數我想用SQL查詢來獲取Oracle中的會話數:找不到甲骨文

SELECT value FROM v$parameter WHERE name = 'sessions' 

但我得到這個錯誤:

Error starting at line 1 in command: 
SELECT value FROM v$parameter WHERE name = 'sessions' 
Error at Command Line:1 Column:18 
Error report: 
SQL Error: ORA-00942: table or view does not exist 
00942. 00000 - "table or view does not exist" 
*Cause:  
*Action: 

也許Oracle用戶我使用的是不是特權?

+0

如果您沒有所需的權限,仍可以使用dbms_utility.get_parameter_value讀取參數值。請參閱以下網址的說明和示例:http://oraclequirks.blogspot.com/2007/10/dbmsutilitygetparametervalue.html – 2014-11-03 17:03:05

回答

4

通常情況下,更好的方法是使用一個過程併爲此過程授予必要的權限。但是,如果您想直接使用SQL,則可以向用戶授予SELECT_CATALOG_ROLESELECT ANY DICTIONARY

3

也許吧。要授予這些權利,您需要使用表格名稱V_$PARAMETER。它在授予動態視圖權限時受到一些限制。

+0

我按照您的建議更改了表的名稱,但我又收到相同的錯誤消息。 – 2013-02-17 18:52:46

+0

@PeterPenzov:您不需要更改名稱,您需要**授予** plouf提到的表上的權限。 – 2013-02-17 19:28:27

+0

這樣做的正確方法是什麼? – 2013-02-17 19:50:53

-2

使用權限: - 選擇任何表運行批在Oracle 12c中以SYSDBA SYS當解決這個問題對我來說改變任何表

+0

這是非常危險的,因爲它提供的資源超過了必要的數量。 – 2017-05-05 22:49:11