首页 > 解决方案 > 使用 jooq dsl 插入超过 22 个字段

问题描述

我想使用 dsl 上下文插入超过 22 个字段。


 val dslContext: DSLContext = DSL.using(
    DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgres?user=postgres&password=postgres"),
    SQLDialect.POSTGRES,
    jooqSettings)


 dslContext
        .insertInto(
          table,
          table.field1,
          table.field2,
          table.field3,
          table.field4,
          table.field5,
          table.field6,
          table.field7,
          table.field8,
          table.field9,
          table.field10,
        )
        .values(
          fields(0),
          fields(1),
          fields(2),
          fields(3),
          fields(4),
          fields(5),
          fields(6),
          fields(7),
          fields(8),
          fields(9)
        )
        .execute()

我想插入超过 22 个字段,但构造函数最多允许 22 个字段。是否可以插入22个字段?

标签: javadsljooqquerydsl

解决方案


insertInto 方法可以接受任意数量的字段(它具有最多 22 个字段的特定重载和一个更通用的 vararg 版本,可以接受 23 个或更多字段)。因此,只需在您展示的示例中继续添加您的字段,它应该可以正常工作。


推荐阅读