java - 如何将列表转换为UpdatableRecord?

标签 java sql database jooq

我在 jooq 中遇到了与批量删除相关的问题。我在下面给出的代码中有一个列表 folderProcessChecklistRecordList 。但问题是将列表转换为 UpdatableRecord 。因为batchDelete参数需要 UpdatableRecord 。

错误:

The method batchDelete(UpdatableRecord...) in the type Transaction is not applicable for the arguments (List)

代码在这里:

public void deleteFolderProcessChecklist(String folderType, List<FolderProcessChecklistRecord> folderProcessChecklistRecordList) throws ProcessCheckListException{

        if(UserSubject.current().hasPermission(folderType, ButtonPermissionCode.FOLDER_PROCESS_CHECKLIST_DELETE)){
            Transaction.current().batchDelete(folderProcessChecklistRecordList));
        }else{
            throw new ProcessCheckListException();
        }
    }

谁能告诉我:

如何将列表转换为可更新记录?

最佳答案

这里有一些潜在的问题:

您的记录根本不是 UpdatableRecord

您确定您的 FolderProcessChecklistRecordUpdatableRecord ?否则,您无法将其传递给 batchDelete()方法

您的Transaction.current()对象没有实现 DSLContext 的全部

jOOQ 发货时已重载 DSLContext.batchDelete()方法:

来自other questions (by your coworkers?) ,我怀疑你的自定义Transaction类型可能无法正确实现 DSLContext .

关于java - 如何将列表转换为UpdatableRecord?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20119215/

相关文章:

javascript - 在java中将月份中的天数列为下拉列表的可行算法

java - JPA spring boot 内部联接 - with-clause 引用了两个不同的 from-clause 元素错误

java - 如何将javafx场景设置为没有图标?

mysql - 在 MYSQL 结果中将数字转换为单词!使用查询

java - 如何判断字符串中的某个字符是否为大写

c# - Entity Framework 6 Code First 插入时的默认日期时间值

sql - 非常基本的 IF EXISTS 语句不起作用

mysql - 使用 SQL Query 或 Laravel SQL Query Builder 创建表/列组合

database - PL/SQL : UTL_FILE. FOPEN 这将在客户端或服务器端打开文件

java - Java模拟测试数据库性能