雪花存储过程 - 多个多行 SQL 命令

Posted

技术标签:

【中文标题】雪花存储过程 - 多个多行 SQL 命令【英文标题】:Snowflake Stored Procedure- Multiple multiline SQL commands 【发布时间】:2020-12-01 16:55:53 【问题描述】:

希望找出顺序 sql 命令的雪花存储过程的最佳实践。目前这是我模拟的工作格式。它有 var cmd,后跟 sqlText create 语句,然后是 sql.execute。我知道我可以为 sql 做一个单行 var cmd,但可读性还有很多不足之处。任何帮助/提示将不胜感激。

CREATE OR REPLACE PROCEDURE example_sp()
returns string not null
language javascript
AS
$$
var cmd1 = `MERGE INTO...
            example 1st multiline SQL command`
var sql1 = snowflake.createStatement(sqlText: cmd1);
var result1 = sql.execute();

var cmd2 = `MERGE INTO...
            example 2nd multiline SQL command`
var sql2 = snowflake.createStatement(sqlText: cmd2);
var result2 = sql2.execute();

/*repeat with above template for rest of commands*/
return '1';
$$;

【问题讨论】:

【参考方案1】:

看来我还不够努力

var rs = snowflake.execute(  sqlText: 
 `create or replace table deleteme as
   select sysdate() as sysd;`
    );
return 'Done.';

似乎解决了这个问题https://***.com/a/64825664/14743506

【讨论】:

以上是关于雪花存储过程 - 多个多行 SQL 命令的主要内容,如果未能解决你的问题,请参考以下文章

雪花中的存储过程中是不是有打印命令

雪花存储过程调用具有迭代返回消息的多个语句

雪花存储过程多语句列表参数

具有多个存储过程的任务

我们可以像在 SQL Server 中那样加密雪花中的存储过程吗?

当我尝试使用雪花存储过程执行更改命令时给出错误?