jooq等同于DDL视图会是什么?

时间:2013-12-19 22:35:37

标签: java sql sql-view jooq

我有一个应用程序,现在实现为少数几个视图,以及一些依赖于视图的jooq查询

为什么不将整个图层移动到jooq?也就是说,在jooq中实现视图?这样做的聪明方法是什么?性能影响是什么?

1 个答案:

答案 0 :(得分:3)

在jOOQ中有一个待处理的低优先级功能请求,以支持在jOOQ中编写的视图:

您可以通过扩展jOOQ来创建等效的数据库视图:

根据您的数据库,将视图代码从数据库移动到应用程序层确实可能会对性能产生轻微影响,因为数据库无法再收集(命名)视图的统计信息。但是,除非您创建物化视图,否则很少有数据库实际执行此操作。

使用Java在jOOQ中保存视图的优点是:

  • 更容易迁移。您不必编写DDL来在应用程序的不同版本之间迁移视图
  • 视图的高级jOOQ功能应用程序。例如,如果需要通过jOOQ的SQL transformation SPI,您可以转换视图的SQL。