我想定义一个接收一个整数数组作为输入的存储过程。像这样:
CREATE OR REPLACE PROCEDURE "x"(DATE, DATE, INT[] , INT[])
另外,我想执行它,但我不知道怎么写它? 也许像执行x(date1,date2,(1,2,3),(4,5,6)) 这会弹出一个错误:
ERROR [42000]错误:'Exec“x”('2011-8-1','2015-9-14',(6,7,1),(1,2,3))'
错误^找到“,”(在char 73)期待IN' or
NOT'或OVERLAPS' or
Op'或'CONCAT_OP'
答案 0 :(得分:1)
如果要在单个参数位置传递值数组,通常必须将它们打包到VARCHAR中(因为您可能已经在后面的问题中找到了它)。
如果您需要更复杂的数组处理,那么您可以使用SQL Extension Toolkit中提供的数组函数。