Postgresql 如何在myBatis xml mapper中调用postgres函数?

Postgresql 如何在myBatis xml mapper中调用postgres函数?,postgresql,function,mybatis,Postgresql,Function,Mybatis,如何使用xml在myBatis中调用函数 我有这个功能 CREATE OR REPLACE FUNCTION save_audit_deletions(IN days numeric, IN table_name text) RETURNS void AS $body$ DECLARE interval INT; BEGIN UPDATE table_name SET backup = 1 WHERE backup = 0 AND creationdate >= now

如何使用xml在myBatis中调用函数

我有这个功能

CREATE OR REPLACE FUNCTION save_audit_deletions(IN days numeric, IN 
table_name text) 
RETURNS void AS
$body$
DECLARE
   interval INT;
BEGIN

    UPDATE table_name SET backup = 1 WHERE backup = 0 AND creationdate >= now()::DATE - days AND creationdate < now()::DATE;

    IF copy_func(table_name, days) > 0 THEN
    DELETE FROM table_name WHERE backup = 1;
    ELSE
    UPDATE table_name SET backup = 0 WHERE backup = 1;
    END IF;
END
$body$
LANGUAGE plpgsql;
创建或替换函数save\u audit\u删除(以天为单位,以数字为单位)
表(名称文本)
返回void作为
$body$
声明
区间INT;
开始
更新表_name SET backup=1,其中backup=0,creationdate>=now()::DATE-days,creationdate0,则
从表_name中删除,其中backup=1;
其他的
更新表_name SET backup=0,其中backup=1;
如果结束;
终止
$body$
语言plpgsql;

我如何调用这个传递参数的函数?谢谢。

XML语句和Java映射器方法如下所示


{调用save_audit_deletions(#{days},#{text})}
void saveAuditDeletes(@Param(“days”)整数天,@Param(“text”)字符串文本);
仅供参考,它可以在没有XML的情况下完成

@Options(statementType=statementType.CALLABLE)
@更新({call save_audit_deletions({days},{text}}))
void saveAuditDeletes(@Param(“days”)整数天,@Param(“text”)字符串文本);