DESCRIBE PROCEDURE¶
Beschreibt die angegebene gespeicherte Prozedur, einschließlich der Signatur (d. h. Argumente), des Rückgabewerts, der Sprache und des Hauptteils (d. h. der Definition) der gespeicherten Prozedur.
- Siehe auch:
DROP PROCEDURE, ALTER PROCEDURE, CREATE PROCEDURE, SHOW PROCEDURES
Syntax¶
DESC[RIBE] PROCEDURE <procedure_name> ( [ <arg_data_type> [ , <arg_data_type_2> ... ] ] )
Nutzungshinweise¶
Um eine gespeicherte Prozedur zu beschreiben, müssen Sie den Namen und ggf. die Argumentdatentypen für die gespeicherte Prozedur angeben. Die Argumente sind erforderlich, da gespeicherte Prozeduren das Überladen von Namen unterstützen (d. h. zwei gespeicherte Prozeduren im selben Schema können denselben Namen haben, solange sich ihre Argumentdatentypen unterscheiden).
Die Eigenschaft
body
in der Ausgabe zeigt den Code für die gespeicherte Prozedur an.
Beispiele¶
Dieses Beispiel veranschaulicht, wie eine gespeicherte Prozedur ohne Parameter beschrieben wird:
DESC PROCEDURE my_pi(); +---------------+----------------------+ | property | value | |---------------+----------------------| | signature | () | | returns | FLOAT | | language | JAVASCRIPT | | null handling | CALLED ON NULL INPUT | | volatility | VOLATILE | | execute as | CALLER | | body | | | | return 3.1415926; | | | | +---------------+----------------------+
Dieses Beispiel veranschaulicht, wie eine gespeicherte Prozedur mit einem Parameter beschrieben wird:
DESC PROCEDURE area_of_circle(FLOAT); +---------------+------------------------------------------------------------------+ | property | value | |---------------+------------------------------------------------------------------| | signature | (RADIUS FLOAT) | | returns | FLOAT | | language | JAVASCRIPT | | null handling | CALLED ON NULL INPUT | | volatility | VOLATILE | | execute as | OWNER | | body | | | | var stmt = snowflake.createStatement( | | | {sqlText: "SELECT pi() * POW($RADIUS, 2)", binds:[RADIUS]} | | | ); | | | var rs = stmt.execute(); | | | rs.next() | | | var output = rs.getColumnValue(1); | | | return output; | | | | +---------------+------------------------------------------------------------------+