我参加了一个项目,该项目具有java界面,其中包含查询oracle db的方法。方法是使用@SqlQuery
,@SqlUpdate
等注释制作的。
我需要调用一个过程,该过程返回(或另一个以输入为过程的过程)自定义数据库表类型(TYPE x IS TABLE OF VARCHAR(y) INDEX BY BINARY_INTEGER;
)的参数。
我无法理解如何使用注释传递此参数。可以说,我发现使用的所有答案都是命令式(how to call procedure with out parameter as table type from a java class)。这些解决方案的关键点是registerOutParameter(2, Types.ARRAY, typeTableName)
。但是在jdbi中,registerOutParameter
仅接受2个参数作为输入。
是否甚至可以使用注释来解决我的问题,或者我是否需要结合使用命令性和声明性方式使用jdbi(如果可以,请向我展示如何做到这一点的示例)。