为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 jOOQ 模拟数据中返回结果列表

如何在 jOOQ 模拟数据中返回结果列表

冉冉说 2023-01-05 17:04:48

我正在使用 jOOQ 的 MockDataProvider 来模拟对数据库的调用。我已经弄清楚如何使用此处的信息返回单个记录:https ://blog.jooq.org/2013/02/20/easy-mocking-of-your-database/

但是,我想返回一个结果列表,而不仅仅是我的查询的一条记录。我怎么做?

我可以使用以下内容(来自上面的链接)返回单个结果:

return new MockResult[] { 
 new MockResult(1, result)
};

但是,我不知道如何添加多个结果,所有 MockResult 的构造函数只接受一个结果。有什么提示吗?我错过了一些明显的东西吗?

例如,如果我查询所有是公路自行车的自行车: SELECT * FROM bicycles WHERE type = "road"; 我如何返回 10 辆自行车的列表而不是只有一辆?


查看完整描述

1 回答

?
慕斯709654

TA贡献1594条经验 获得超5个赞

我可以使用以下(来自上面的链接)返回单个结果


但那已经是它了。您返回一个包含多个记录的结果。您传递给该MockResult构造函数的结果可能如下所示:


var result = ctx.newResult(BICYCLES.COL1, BICYCLES.COL2);

result.add(ctx.newRecord(BICYCLES.COL1, BICYCLES.COL2).values(1, 2));

result.add(ctx.newRecord(BICYCLES.COL1, BICYCLES.COL2).values(3, 4));

...


查看完整回答
反对 回复 2023-01-05

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信