Snowflake cloud data platform 我们如何在Snowflake中的SnowSQL中执行错误处理

Snowflake cloud data platform 我们如何在Snowflake中的SnowSQL中执行错误处理,snowflake-cloud-data-platform,Snowflake Cloud Data Platform,我们知道如何在SnowSql中执行错误处理吗 示例:一个SnowSQL有10个SQL步骤,如果上一个步骤成功执行,则捕获。 假设步骤5由于某些问题而失败,然后在输出日志中捕获相同的问题。 或者步骤5失败,但忽略该失败并在SnowSql中继续执行。您可以创建一个存储过程并在Try/Catch块中运行每条语句 相关部分如下所示: stmt = snowflake.createStatement("select 1"); var rs; try{

我们知道如何在SnowSql中执行错误处理吗

示例:一个SnowSQL有10个SQL步骤,如果上一个步骤成功执行,则捕获。 假设步骤5由于某些问题而失败,然后在输出日志中捕获相同的问题。
或者步骤5失败,但忽略该失败并在SnowSql中继续执行。您可以创建一个存储过程并在Try/Catch块中运行每条语句

相关部分如下所示:

    stmt = snowflake.createStatement("select 1");
    var rs;
    try{
        rs = stmt.execute();
        return stmt.getQueryId() + ":" + "SUCCESS";
    }
    catch(err){
        return GetLastQueryID() + ":" + "ERROR:" + err.message;
    }
如果脚本在出现错误时终止,则可以带着错误退出。如果脚本应该继续,您可以报告错误并继续

实际上,我编写了一个存储过程来实现这一点。它从雪花表中读取SQL语句。有一列设置语句的运行顺序。使用1970年的技巧,以10或100的增量对步骤进行编号,以便在需要时在两者之间添加新步骤。它还允许设置简单的替换变量


您能给我们举个代码示例吗?看见