Stored procedures SAP HANA存储过程输出类型以及如何在SQLScript中重用/捕获输出
在SAP HANA中,我可以使用输入和输出参数创建一个过程。即使没有输出参数,该过程也可以输出一个表 我注意到存储过程中有三种版本的输出:Stored procedures SAP HANA存储过程输出类型以及如何在SQLScript中重用/捕获输出,stored-procedures,hana,Stored Procedures,Hana,在SAP HANA中,我可以使用输入和输出参数创建一个过程。即使没有输出参数,该过程也可以输出一个表 我注意到存储过程中有三种版本的输出: 过程结束时选择-不声明结构 输出参数out参数varhcar(100) 隐式表定义返回表(var1 varchar(10))在函数参数之后和关键字之前语言SQLSCRIPT 这些参数的区别是什么?如何在其他存储过程中重用这些输出参数? 我唯一知道的是 调用过程(input1、input1、outputVar) 不幸的是,我不知道如何在不创建物理表的情况下将S
out参数varhcar(100)
返回表(var1 varchar(10))
在函数参数之后和关键字之前语言SQLSCRIPT
调用过程(input1、input1、outputVar)
如果在call语句之后甚至还有第四个选项可以从HANA SQLScript过程获取结果集,则游标的声明将导致编译器错误:结果视图(从HANA2开始不再受支持) 但我们不要再引起更多的混乱了。 不同的选项可用于不同的场景:
TABLE
的每个OUT参数创建的结果集。例如,JDCB客户机将在过程执行后找到多个结果集并获取这些结果集SELECT * FROM <tablefunction>( in_param1, in_param2, ...);
SELECT*FROM(在参数1中,在参数2中,…);
这提供了一个从函数中读回整个表或模拟参数化视图的简单选项问题是,
joinOn
被定义为输出参数:out joinOn nvarchar(1000)
结果是:
joinOn:=joinOn | | a.| | col.item代码>导致null
李>
解决方案
将out
更改为inout
初始化参数joinOn:=''
感谢Thx为本主题提供了一些信息。我仍在努力重用此拆分函数的输出:我无法将rst
分配给输出变量:/如果它是关于拆分功能本身的,那么现在有REGEXPR
函数在相当长的一段时间内可用。如果是关于实际的作业,你能用一个可重复的问题示例来回答一个新问题吗?是的,这篇文章是关于参数以及如何使用参数的。。这个问题也没有完全回答:如何在另一个过程中重复使用一个过程的返回表(…)?我确实看到了正则表达式,但如果您知道如何使用正则表达式进行拆分,就不会拆分-如果没有循环,我很乐意读到您在这个线程中的答案:进一步细化的问题。函数之间传递参数的问题似乎不起作用。调用后还声明游标会导致编译器错误
SELECT * FROM <tablefunction>( in_param1, in_param2, ...);