DESCRIBE PROCEDURE command¶
The DESCRIBE PROCEDURE command returns details about a specific named procedure.
The following table describes the returned information:
| Column | Description |
|---|---|
proc_type |
The type of the procedure, which indicates the language in which the procedure is written. Valid values: CPP (C++) and GQL. |
module |
The module to which the procedure belongs. A module refers to a file that contains a set of related code for defining the procedure. |
schema |
The schema in which the procedure exists. All built-in procedures have empty schema fields since they are not associated with any schema. |
owner |
The owner of the procedure. All built-in procedures have empty owner fields since they are provided by the system. |
name |
The name of the procedure. |
parameters |
The input parameters accepted by the procedure and their data types. If the procedure does not accept any input parameters, this field is empty. |
return_fields |
The output parameters of the procedure, including the parameter names and their data types. |
null_case |
How the procedure handles null inputs. For procedures written in GQL, the value defaults to raise error on null input, which means that the procedure raises an error if any input parameter is set to null. |
comment |
The description of the procedure. |
Note
An operation involving a non-default schema or an object in it requires access to the schema, either implicitly or through an explicit USAGE grant, as well as the privilege required for the operation. The schema access check and the privilege check for the requested operation are independent; satisfying one does not satisfy the other. Schema access control does not apply to temporary graphs or built-in procedures and functions. For more information, see Schema access control.
Syntax¶
- describe_procedure_command
describe_procedure_command ::=
('DESCRIBE' | 'DESC') 'PROCEDURE' procedure_name
Parameters¶
procedure_name¶
The name of the procedure for which to display details. The procedure name is case-sensitive.
You can specify a regular expression to match multiple procedures. The regular expression must be enclosed in double quotes (") or backticks (`). For example, DESC PROCEDURE "show.*" matches all procedures whose names start with show.
Examples¶
Describe details of a specific procedure¶
DESCRIBE PROCEDURE show_queries
Return:
+-----------+---------+--------+-------+--------------+------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------+-----------------------------+
| proc_type | module | schema | owner | name | parameters | return_fields | null_case | comment |
+-----------+---------+--------+-------+--------------+------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------+-----------------------------+
| CPP | dbms.so | | | show_queries | | username:STRING, host:STRING, home_graph:STRING, session_id:INT64, query_id:STRING, query:STRING, start_time:ZONEDDATETIME, duration(ms):INT64, status:STRING | | display the running queries |
+-----------+---------+--------+-------+--------------+------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------+-----------------------------+
Describe multiple procedures with a regular expression¶
DESC PROCEDURE "show.*"
Return:
+-----------+---------+--------+-------+-------------------------------------------+-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------+-------------------------------------------------------------------------+
| proc_type | module | schema | owner | name | parameters | return_fields | null_case | comment |
+-----------+---------+--------+-------+-------------------------------------------+-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------+-------------------------------------------------------------------------+
| CPP | dbms.so | | | show_current_session_time_formats | | date_format:STRING, local_time_format:STRING, zoned_time_format:STRING, local_datetime_format:STRING, zoned_datetime_format:STRING | | display all time formats of the current session |
| CPP | dbms.so | | | show_services | service_type:STRING | host:STRING, port:UINT32, status:STRING, service_type:STRING, git_info_sha:STRING, version:STRING | | show services of specific type in this service group |
...
+-----------+---------+--------+-------+-------------------------------------------+-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------+-------------------------------------------------------------------------+