JOOQ - 如何获取TableField的tbl_name.col_name?

时间:2013-02-08 19:52:54

标签: java mysql sql jooq

如何从TableField获取表格+列限定符名称。

我尝试过以下方法

USER.ID.toString(); // "db.user.id"
USER.ID.getName();  // "id"

1 个答案:

答案 0 :(得分:4)

正如您所注意到的,TableField.toString()方法呈现完全限定列。您有两种选择:

自己动手:

String sql = USER.getName() + "." + USER.ID.getName();

使用配置为忽略架构名称的Configuration

Settings settings = new Settings();
settings.setRenderSchema(false);                    // Omit schema rendering
settings.setRenderNameStyle(RenderNameStyle.AS_IS); // Omit escaping names
DSLContext = DSL.using(SQLDialect.MYSQL, settings);
String sql = ctx.render(USER.ID);