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

有没有办法使用 jOOQ 动态获取所有表字段名称?

有没有办法使用 jOOQ 动态获取所有表字段名称?

蝴蝶刀刀 2022-06-23 17:20:31
codegen 生成TableImpl的 s 包含方法,如getIndexes, getPrimaryKey, getKeys.没有方法可以获取所有表字段 ( TableField) 之类的getFields。name如果例如是表的实际列,是否有另一种以编程方式检查的方法?
查看完整描述

2 回答

?
慕虎7371278

TA贡献1802条经验 获得超4个赞

您可以尝试按名称获取字段并检查您是否真的取回了该字段


if (TableName.TABLENAME.field("name") != null) {

    System.out.println("The field is there: " + TableName.TABLENAME.field("name").getName());

} else {

    System.out.println("There is no field with that name.");

}

也可以使用以下fieldsRow()方法获取所有字段:


Row fields = TableName.TABLENAME.fieldsRow();


for (int i = 0; i < fields.size(); i++) {

    System.out.println(fields.field(i).getName());

}


查看完整回答
反对 回复 2022-06-23
?
阿晨1998

TA贡献2037条经验 获得超6个赞

没有像getFields那样获取所有表字段(TableField)的方法。

由于历史命名原因,该方法被称为Table.fields()not Table.getFields()

如果名称是表的实际列,是否有另一种方法可以以编程方式检查?

wallek876 已经为这部分提供了正确的答案


查看完整回答
反对 回复 2022-06-23
  • 2 回答
  • 0 关注
  • 185 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号