org.jooq.Table类的使用及代码示例

x33g5p2x  于2022-01-30 转载在 其他  
字(8.8k)|赞(0)|评价(0)|浏览(337)

本文整理了Java中org.jooq.Table类的一些代码示例,展示了Table类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Table类的具体详情如下:
包路径:org.jooq.Table
类名称:Table

Table介绍

[英]A table to be used in queries
[中]用于查询的表

代码示例

代码示例来源:origin: my2iu/Jinq

  1. @Override
  2. public int getNumColumns()
  3. {
  4. return table.fields().length;
  5. }

代码示例来源:origin: palantir/atlasdb

  1. @Override
  2. public void delete(final TableReference tableRef, final Multimap<Cell, Long> keys) {
  3. if (keys.isEmpty()) {
  4. return;
  5. }
  6. for (List<Entry<Cell, Long>> partition : Iterables.partition(keys.entries(), batchSizeForMutations)) {
  7. run((Function<DSLContext, Void>) ctx -> {
  8. Collection<Row3<byte[], byte[], Long>> rows = Lists.newArrayListWithCapacity(partition.size());
  9. for (Entry<Cell, Long> entry : partition) {
  10. rows.add(row(entry.getKey().getRowName(), entry.getKey().getColumnName(), entry.getValue()));
  11. }
  12. ctx.deleteFrom(atlasTable(tableRef).as(ATLAS_TABLE))
  13. .where(row(A_ROW_NAME, A_COL_NAME, A_TIMESTAMP).in(rows))
  14. .execute();
  15. return null;
  16. });
  17. }
  18. }

代码示例来源:origin: my2iu/Jinq

  1. @Override
  2. public T readResult(Record record, int offset)
  3. {
  4. T toReturn;
  5. try {
  6. toReturn = constructor.newInstance();
  7. } catch (Exception e) {
  8. throw new IllegalArgumentException("Cannot construct class " + table.getRecordType().getName());
  9. }
  10. Field<?>[] fields = table.fields();
  11. for (int idx = 0; idx < fields.length; idx++)
  12. {
  13. Field<?> f = fields[idx];
  14. copyValueIntoRecord(toReturn, record, f, idx);
  15. }
  16. return toReturn;
  17. }

代码示例来源:origin: palantir/atlasdb

  1. int endIndex = partialSql.lastIndexOf(')');
  2. String fullSql = partialSql.substring(0, endIndex) + "," +
  3. " CONSTRAINT pk_" + kvs.METADATA_TABLE.getName() +
  4. " PRIMARY KEY (" + TABLE_NAME.getName() + ")" +
  5. partialSql.substring(endIndex);

代码示例来源:origin: org.jooq/jooq

  1. if (!StringUtils.isBlank(t.getCatalog().getName()))
  2. it.setTableCatalog(t.getCatalog().getName());
  3. if (!StringUtils.isBlank(t.getSchema().getName()))
  4. it.setTableSchema(t.getSchema().getName());
  5. it.setTableName(t.getName());
  6. it.setComment(t.getComment());
  7. result.getTables().add(it);
  8. Field<?>[] fields = t.fields();
  9. for (int i = 0; i < fields.length; i++) {
  10. Field<?> f = fields[i];
  11. Column ic = new Column();
  12. if (!StringUtils.isBlank(t.getCatalog().getName()))
  13. ic.setTableCatalog(t.getCatalog().getName());
  14. if (!StringUtils.isBlank(t.getSchema().getName()))
  15. ic.setTableSchema(t.getSchema().getName());
  16. ic.setTableName(t.getName());
  17. ic.setColumnName(f.getName());
  18. ic.setComment(f.getComment());
  19. for (UniqueKey<?> key : t.getKeys())
  20. exportKey0(result, t, key, key.isPrimary() ? PRIMARY_KEY : UNIQUE);
  21. for (ForeignKey<?, ?> fk : t.getReferences())

代码示例来源:origin: com.torodb.torod.backends/common

  1. public boolean isSemanticallyEquals(Table<Record> table) {
  2. if (!table.getName().equals(getName())) {
  3. return false;
  4. }
  5. if (table.getSchema() == null || !getSchema().getName().equals(table.getSchema().getName())) {
  6. return false;
  7. }
  8. if (table.fields().length != 7) {
  9. return false;
  10. }
  11. return true; //TODO: improve the check
  12. }

代码示例来源:origin: org.jooq/jooq

  1. @Override
  2. public final LoaderImpl<R> onDuplicateKeyUpdate() {
  3. if (table.getPrimaryKey() == null) {
  4. throw new IllegalStateException("ON DUPLICATE KEY UPDATE only works on tables with explicit primary keys. Table is not updatable : " + table);
  5. }
  6. onDuplicate = ON_DUPLICATE_KEY_UPDATE;
  7. return this;
  8. }

代码示例来源:origin: mevdschee/java-crud-api

  1. @SuppressWarnings("unchecked")
  2. public ReflectedTable(Table<?> table) {
  3. super(table.getQualifiedName());
  4. this.table = table;
  5. for (Field<?> field : table.fields()) {
  6. String name = field.getName();
  7. DataType<Object> dataType = (DataType<Object>) field.getDataType();
  8. TableField newField = createField(name, dataType);
  9. fields.put(name, newField);
  10. }
  11. UniqueKey<?> primaryKey = table.getPrimaryKey();
  12. if (primaryKey != null) {
  13. if (primaryKey.getFields().size() == 1) {
  14. pk = primaryKey.getFields().get(0);
  15. }
  16. }
  17. for (ForeignKey<?, ?> fk : table.getReferences()) {
  18. fks.put(findForeignKeyFieldName(fk), findForeignKeyReference(fk));
  19. }
  20. }

代码示例来源:origin: perfectsense/dari

  1. private SqlSubJoin(SqlQuery parent, SqlQuery sub, SqlJoin join) {
  2. this.sqlQuery = sub;
  3. AbstractSqlDatabase database = sub.database;
  4. String alias = sub.recordTableAlias;
  5. Field<?> id = DSL.field(DSL.name(alias, database.recordIdField.getName()), database.uuidType());
  6. this.table = sub.initialize(DSL.table(DSL.name(database.recordTable.getName())).as(alias));
  7. this.on = join.valueField.eq(id);
  8. if (sub.needsDistinct) {
  9. parent.needsDistinct = true;
  10. }
  11. }
  12. }

代码示例来源:origin: org.jooq/jooq

  1. private static String getQualifiedName(Table<?> table) {
  2. StringBuilder sb = new StringBuilder();
  3. if (table.getSchema() != null) {
  4. sb.append(table.getSchema().getName());
  5. sb.append(".");
  6. }
  7. sb.append(table.getName());
  8. return sb.toString();
  9. }
  10. }

代码示例来源:origin: my2iu/Jinq

  1. public TableRowReader(Table<T> table)
  2. {
  3. this.table = table;
  4. try {
  5. constructor = table.getRecordType().getDeclaredConstructor();
  6. } catch (Exception e) {
  7. throw new IllegalArgumentException("Cannot find constructor for class " + table.getRecordType().getName());
  8. }
  9. }

代码示例来源:origin: org.jooq/jooq

  1. @Override
  2. public final void addJoinOnKey(TableLike<?> table, JoinType type) throws DataAccessException {
  3. // TODO: This and similar methods should be refactored, patterns extracted...
  4. int index = getFrom().size() - 1;
  5. Table<?> joined = null;
  6. switch (type) {
  7. case JOIN:
  8. case LEFT_OUTER_JOIN:
  9. case RIGHT_OUTER_JOIN:
  10. case FULL_OUTER_JOIN:
  11. case LEFT_SEMI_JOIN:
  12. case LEFT_ANTI_JOIN:
  13. joined = getFrom().get(index).join(table, type).onKey();
  14. break;
  15. default:
  16. throw new IllegalArgumentException("JoinType " + type + " is not supported with the addJoinOnKey() method. Use INNER or OUTER JOINs only");
  17. }
  18. getFrom().set(index, joined);
  19. }

代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-analytics

  1. RenamedTable(Table<R> delegate, String rename) {
  2. super(rename, delegate.getSchema());
  3. for (Field<?> field : delegate.fields()) {
  4. createField(field.getName(), field.getDataType(), this);
  5. }
  6. }
  7. }

代码示例来源:origin: org.jooq/jooq

  1. private final Name generatedName() {
  2. Name t = table.getQualifiedName();
  3. StringBuilder sb = new StringBuilder(table.getName());
  4. for (SortField<?> f : sortFields)
  5. sb.append('_').append(f.getName());
  6. sb.append("_idx");
  7. if (t.qualified())
  8. return t.qualifier().append(sb.toString());
  9. else
  10. return name(sb.toString());
  11. }

代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-analytics

  1. @Override
  2. public final void addJoinOnKey(TableLike<?> table, JoinType type, TableField<?, ?>... keyFields) throws DataAccessException {
  3. // TODO: This and similar methods should be refactored, patterns extracted...
  4. int index = getFrom().size() - 1;
  5. Table<?> joined = null;
  6. switch (type) {
  7. case JOIN:
  8. joined = getFrom().get(index).join(table).onKey(keyFields);
  9. break;
  10. case LEFT_OUTER_JOIN:
  11. joined = getFrom().get(index).leftOuterJoin(table).onKey(keyFields);
  12. break;
  13. case RIGHT_OUTER_JOIN:
  14. joined = getFrom().get(index).rightOuterJoin(table).onKey(keyFields);
  15. break;
  16. case FULL_OUTER_JOIN:
  17. joined = getFrom().get(index).fullOuterJoin(table).onKey(keyFields);
  18. break;
  19. default:
  20. throw new IllegalArgumentException("JoinType " + type + " is not supported with the addJoinOnKey() method. Use INNER or OUTER JOINs only");
  21. }
  22. getFrom().set(index, joined);
  23. }

代码示例来源:origin: org.jooq/jooq

  1. @SuppressWarnings("unchecked")
  2. @Override
  3. public final Class<? extends R> getRecordType() {
  4. // Generated record classes only come into play, when the select is
  5. // - on a single table
  6. // - a select *
  7. if (getFrom().size() == 1 && getSelect0().isEmpty()) {
  8. return (Class<? extends R>) getFrom().get(0).asTable().getRecordType();
  9. }
  10. else {
  11. return (Class<? extends R>) RecordImpl.class;
  12. }
  13. }

代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-analytics

  1. joined = getFrom().get(index).join(table).on(conditions);
  2. break;
  3. case LEFT_OUTER_JOIN: {
  4. TablePartitionByStep p = getFrom().get(index).leftOuterJoin(table);
  5. TableOnStep o = p;
  6. TablePartitionByStep p = getFrom().get(index).rightOuterJoin(table);
  7. TableOnStep o = p;
  8. joined = getFrom().get(index).fullOuterJoin(table).on(conditions);
  9. break;
  10. joined = getFrom().get(index).crossJoin(table);
  11. break;
  12. case NATURAL_JOIN:
  13. joined = getFrom().get(index).naturalJoin(table);
  14. break;
  15. case NATURAL_LEFT_OUTER_JOIN:
  16. joined = getFrom().get(index).naturalLeftOuterJoin(table);
  17. break;
  18. case NATURAL_RIGHT_OUTER_JOIN:
  19. joined = getFrom().get(index).naturalRightOuterJoin(table);
  20. break;

代码示例来源:origin: rancher/cattle

  1. if (foreignKey == null) {
  2. Table<?> childTable = JooqUtils.getTableFromRecordClass(child);
  3. for (ForeignKey<?, ?> foreignKeyTest : childTable.getReferences()) {
  4. if (foreignKeyTest.getKey().getTable().getRecordType() == parent) {
  5. if (propertyField != null) {
  6. if (foreignKeyTest.getFields().get(0).getName().equals(propertyField.getName())) {

代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-analytics

  1. @SuppressWarnings({ "unchecked", "rawtypes" })
  2. @Override
  3. public final List<ForeignKey<Record, ?>> getReferences() {
  4. List<ForeignKey<?, ?>> result = new ArrayList<ForeignKey<?, ?>>();
  5. result.addAll(lhs.getReferences());
  6. result.addAll(rhs.getReferences());
  7. return (List) result;
  8. }

代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-analytics

  1. @Override
  2. public final Table<?> getTable(String name) {
  3. for (Table<?> table : getTables()) {
  4. if (table.getName().equals(name)) {
  5. return table;
  6. }
  7. }
  8. return null;
  9. }

相关文章