7

我想使用 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 用户没有特权?

4

3 回答 3

10

通常,更好的方法是使用一个过程并授予该过程必要的权限。但是,如果您想直接使用 SQL,您可以授予SELECT_CATALOG_ROLE或授予SELECT ANY DICTIONARY用户。

于 2013-02-19T02:36:41.223 回答
5

大概。要授予权限,您需要将表名用作V_$PARAMETER. 它来自于授予动态视图权限时的一些限制。

于 2013-02-17T18:48:34.563 回答
-3

使用权限: -选择任何表,在 Oracle 12c 中使用 SYSDBA 以 SYS 身份运行授权时更改任何表为我解决了这个问题。

于 2017-05-05T21:41:10.757 回答