0

我有一个requiremnet,我需要一个过程调用另一个过程。我们如何在一个过程中调用另一个过程

谢谢,尼基尔

4

1 回答 1

0

要从过程中调用过程,只需像在过程中执行任何其他 SQL 查询一样执行它:

CREATE OR REPLACE PROCEDURE TEST_CALL_SP(PARAM1 TEXT)
RETURNS VARIANT
LANGUAGE JAVASCRIPT
EXECUTE AS CALLER
AS
$$
 
    var param2 = 12345;
    var return_rows = [];
 
    var stmt = snowflake.createStatement({
        sqlText: 'CALL TEST_CALLED_SP(:1, :2)',
        binds: [PARAM1, param2]
    });
    
    var result = stmt.execute();
    result.next();
    return_rows.push(result.getColumnValue(1))
    
    return return_rows;
    
$$

上面的 sqlsqlText: 'CALL TEST_CALLED_SP(:1, :2)'是从过程内部调用TEST_CALLED_SP过程。

有关完整代码,请查看 Srinath 发布的链接:https ://community.snowflake.com/s/question/0D50Z00009VvipRSAR/how-do-i-call-a-procedure-into-another-procedure

于 2021-09-02T23:05:46.213 回答