SHOW PROCEDURES
可以使用 SHOW PROCEDURES
列出可用的过程。
命令 |
此命令将生成一个包含以下列的表格
列 | 描述 | 类型 |
---|---|---|
|
过程的名称。 默认输出 |
|
|
过程描述。 默认输出 |
|
|
过程模式,例如 |
|
|
该过程是否可以在 |
|
|
过程的签名。 |
|
|
过程参数列表,作为包含 |
|
|
过程返回的值列表,作为包含 |
|
|
如果此过程是管理员过程,则为 |
|
|
允许执行此过程的角色列表。如果没有 |
|
|
允许在执行此过程时使用增强模式的角色列表。如果没有 |
|
|
该过程是否已弃用。 在 5.9 中引入 |
|
|
在弃用情况下要使用的替换过程;否则为 |
|
|
额外输出的映射,例如,如果该过程已弃用。 |
|
过程的弃用信息在 isDeprecated
和 option
列中返回。
语法
有关语法描述的更多详细信息,请参阅 此处。 |
- 列出所有过程
SHOW PROCEDURE[S]
[YIELD { * | field[, ...] } [ORDER BY field[, ...]] [SKIP n] [LIMIT n]]
[WHERE expression]
[RETURN field[, ...] [ORDER BY field[, ...]] [SKIP n] [LIMIT n]]
使用 |
- 列出当前用户可以执行的过程
SHOW PROCEDURE[S] EXECUTABLE [BY CURRENT USER]
[YIELD { * | field[, ...] } [ORDER BY field[, ...]] [SKIP n] [LIMIT n]]
[WHERE expression]
[RETURN field[, ...] [ORDER BY field[, ...]] [SKIP n] [LIMIT n]]
使用 |
- 列出指定用户可以执行的过程
SHOW PROCEDURE[S] EXECUTABLE BY username
[YIELD { * | field[, ...] } [ORDER BY field[, ...]] [SKIP n] [LIMIT n]]
[WHERE expression]
[RETURN field[, ...] [ORDER BY field[, ...]] [SKIP n] [LIMIT n]]
需要 SHOW USER
权限。此命令不能用于 LDAP 用户。
使用 |
列出所有过程
要使用默认输出列列出所有可用过程,可以使用 SHOW PROCEDURES
命令。如果需要所有列,请使用 SHOW PROCEDURES YIELD *
。
SHOW PROCEDURES
name | description | mode | worksOnSystem |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
行数:15 |
上表仅显示查询的前 15 个结果。要获取 Neo4j 中所有内置过程的完整列表,请访问 操作手册 → 过程列表。
列出带输出列过滤器的过程
列出的程序可以通过多种方式进行过滤,其中一种方式是使用 WHERE
子句。例如,返回所有 admin
程序的名称
SHOW PROCEDURES YIELD name, admin
WHERE admin
name | admin |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
行数:15 |
以上表格仅显示查询结果的前 15 条。要查看 Neo4j 中所有需要 admin
权限的程序的完整列表,请访问 /docs/operations-manual/5/reference/procedures#/#_list_of_procedures[操作手册 → 程序列表]。
使用其他过滤条件列出程序
列出的程序也可以通过用户是否可以执行它们来过滤。这种过滤只能通过 EXECUTABLE
子句进行,而不能通过 WHERE
子句进行。这是因为使用的是用户的权限,而不是对可用输出列进行过滤。
使用 EXECUTABLE
子句有两种选择。第一个选项是过滤当前用户
SHOW PROCEDURES EXECUTABLE BY CURRENT USER YIELD *
name | description | rolesExecution | rolesBoostedExecution | … |
---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
行数:15 |
以上表格仅显示查询结果的前 15 条。请注意,由于缺少 SHOW ROLE
权限,两个 roles
列为空。还要注意,以下列不在表格中
-
mode
-
worksOnSystem
-
signature
-
argumentDescription
-
returnDescription
-
admin
-
isDeprecated
-
deprecatedBy
-
options
使用 EXECUTABLE
子句的第二个选项是将列表过滤为仅包含特定用户可以执行的程序。以下示例显示了用户 jake
可用的程序,该用户已被数据库的 admin
授予 EXECUTE PROCEDURE dbms.*
权限。(有关 DBMS EXECUTE
权限管理的更多信息,请参见 操作手册 → DBMS EXECUTE
权限)。
SHOW PROCEDURES EXECUTABLE BY jake
name | description | mode | worksOnSystem |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
行数:13 |