jooq を SQL ジェネレーターとしてのみ使用しようとしていますが、スキーマ情報をクエリに追加できないようです。
private String getOtmUserReportSql() {
Settings settings = new Settings().withRenderMapping(
new RenderMapping().withDefaultSchema(Constants.REP));
DSLContext create = DSL.using((Connection) null,SQLDialect.ORACLE,settings);
String sql =
create.
select(
DSL.fieldByName("User Id").as("User_ID"),
DSL.fieldByName("User_Name").as("Full_Name"),
DSL.fieldByName("Active Status").as("Active_Status"),
DSL.fieldByName("Email").as("Email"),
DSL.fieldByName("Last Login Time").as("Last_Login_Time"),
DSL.fieldByName("Role").as("Role6"),
DSL.fieldByName("ID_ROLE").as("Role_Id"),
.from(DSL.tableByName(REP)).getSQL();
LOGGER.info("Generated SQL : {}",sql);
return sql;
}
生成された SQL は次のとおりです: 2013-08-12 17:52:12,008 [INFO] [main] cjixciSimpleJDBCReportService[67]: 生成された SQL: "User Id" "User_ID", "User_Name" "Full_Name", "Active Status" を選択しますActive_Status"、"Email"、"Email"、"Last Login Time"、"Last_Login_Time"、"Role"、"Role6"、"ID_ROLE"、"Role_Id"、"Business Group"、"Business_Group"、"Menu Template"、"Menu_Template" から" REP」
http://www.jooq.org/doc/2.5/manual-single-page/#runtime-schema-mappingにあるドキュメントによると、次のようなものが表示されるはずです: MySchema."User Id" ... MySchema.REP
私はバージョン 3.1 を使用しています。
ありがとう、