private Set<Column> listTableKeys(final Table table) { final Set<Column> tableKeys = new HashSet<>(); final PrimaryKey primaryKey = table.getPrimaryKey(); if (primaryKey != null && primaryKey.getColumns().size() == 1) { tableKeys.add(primaryKey.getColumns().get(0)); } for (final Index index: table.getIndexes()) { if (index != null && index.isUnique() && index.getColumns().size() == 1) { tableKeys.add(index.getColumns().get(0)); } } return tableKeys; }
private static Collection<List<String>> indexCoumnNames(final Table table, final boolean includeUniqueOnly) { final List<List<String>> allIndexCoumns = new ArrayList<>(); if (table instanceof PartialDatabaseObject) { return allIndexCoumns; } final PrimaryKey primaryKey = table.getPrimaryKey(); final List<String> pkColumns = columnNames(primaryKey); allIndexCoumns.add(pkColumns); for (final Index index: table.getIndexes()) { if (includeUniqueOnly && !index.isUnique()) { continue; } final List<String> indexColumns = columnNames(index); allIndexCoumns.add(indexColumns); } return allIndexCoumns; }
private static Collection<List<String>> indexCoumnNames(final Table table, final boolean includeUniqueOnly) { final List<List<String>> allIndexCoumns = new ArrayList<>(); if (table instanceof PartialDatabaseObject) { return allIndexCoumns; } final PrimaryKey primaryKey = table.getPrimaryKey(); final List<String> pkColumns = columnNames(primaryKey); allIndexCoumns.add(pkColumns); for (final Index index: table.getIndexes()) { if (includeUniqueOnly && !index.isUnique()) { continue; } final List<String> indexColumns = columnNames(index); allIndexCoumns.add(indexColumns); } return allIndexCoumns; }
@Test public void tableUtilities(final TestContext testContext, final Connection connection) throws Exception { final SchemaCrawlerOptionsBuilder schemaCrawlerOptionsBuilder = SchemaCrawlerOptionsBuilder .builder().withSchemaInfoLevel(SchemaInfoLevelBuilder.maximum()); final SchemaCrawlerOptions schemaCrawlerOptions = schemaCrawlerOptionsBuilder .toOptions(); final Catalog catalog = getCatalog(connection, schemaCrawlerOptions); final Schema schema = catalog.lookupSchema("PUBLIC.BOOKS").get(); assertThat("BOOKS Schema not found", schema, notNullValue()); final Table table = catalog.lookupTable(schema, "BOOKS").get(); assertThat("BOOKS Table not found", table, notNullValue()); assertThat(MetaDataUtility.allIndexCoumnNames(table).stream() .flatMap(List::stream).collect(Collectors.toSet()), containsInAnyOrder("PUBLIC.BOOKS.BOOKS.ID", "PUBLIC.BOOKS.BOOKS.PREVIOUSEDITIONID")); assertThat(MetaDataUtility.uniqueIndexCoumnNames(table).stream() .flatMap(List::stream).collect(Collectors.toSet()), containsInAnyOrder("PUBLIC.BOOKS.BOOKS.ID", "PUBLIC.BOOKS.BOOKS.PREVIOUSEDITIONID")); final Index index = table.getIndexes().toArray(new Index[0])[0]; assertThat("Index not found", index, notNullValue()); assertThat(MetaDataUtility.columnNames(index), containsInAnyOrder("PUBLIC.BOOKS.BOOKS.ID")); assertThat(MetaDataUtility.containsGeneratedColumns(index), is(false)); }
final Index[] indexes = table.getIndexes().toArray(new Index[0]); Arrays.sort(indexes, NamedObjectSort.getNamedObjectSort(sortAlphabetically));
out.println(" # constraints: " + table.getTableConstraints().size()); out.println(" # indexes: " + table.getIndexes().size()); out.println(" # foreign keys: " + table.getForeignKeys().size()); out.println(" # imported foreign keys: "
table2.addColumn((MutableColumn) column); for (final Index index: table0.getIndexes())
final Collection<Index> indexesCollection = table.getIndexes(); final List<Index> indexes = new ArrayList<>(indexesCollection); Collections
printIndexes(table.getIndexes()); printTriggers(table.getTriggers()); printTableConstraints(table.getTableConstraints());
private Set<Column> listTableKeys(final Table table) { final Set<Column> tableKeys = new HashSet<>(); final PrimaryKey primaryKey = table.getPrimaryKey(); if (primaryKey != null && primaryKey.getColumns().size() == 1) { tableKeys.add(primaryKey.getColumns().get(0)); } for (final Index index: table.getIndexes()) { if (index != null && index.isUnique() && index.getColumns().size() == 1) { tableKeys.add(index.getColumns().get(0)); } } return tableKeys; }
private Set<Column> listTableKeys(final Table table) { final Set<Column> tableKeys = new HashSet<>(); final PrimaryKey primaryKey = table.getPrimaryKey(); if (primaryKey != null && primaryKey.getColumns().size() == 1) { tableKeys.add(primaryKey.getColumns().get(0)); } for (final Index index: table.getIndexes()) { if (index != null && index.isUnique() && index.getColumns().size() == 1) { tableKeys.add(index.getColumns().get(0)); } } return tableKeys; }
private static Collection<List<String>> indexCoumnNames(final Table table, final boolean includeUniqueOnly) { final List<List<String>> allIndexCoumns = new ArrayList<>(); if (table instanceof PartialDatabaseObject) { return allIndexCoumns; } final PrimaryKey primaryKey = table.getPrimaryKey(); final List<String> pkColumns = columnNames(primaryKey); allIndexCoumns.add(pkColumns); for (final Index index: table.getIndexes()) { if (includeUniqueOnly && !index.isUnique()) { continue; } final List<String> indexColumns = columnNames(index); allIndexCoumns.add(indexColumns); } return allIndexCoumns; }
private static Collection<List<String>> indexCoumnNames(final Table table, final boolean includeUniqueOnly) { final List<List<String>> allIndexCoumns = new ArrayList<>(); if (table instanceof PartialDatabaseObject) { return allIndexCoumns; } final PrimaryKey primaryKey = table.getPrimaryKey(); final List<String> pkColumns = columnNames(primaryKey); allIndexCoumns.add(pkColumns); for (final Index index: table.getIndexes()) { if (includeUniqueOnly && !index.isUnique()) { continue; } final List<String> indexColumns = columnNames(index); allIndexCoumns.add(indexColumns); } return allIndexCoumns; }
@Override public ImmutableCollection<DaIndex> getIndices() { return CollectionAdapter.adapt(table.getIndexes()) .collect(new Function<Index, DaIndex>() { @Override public DaIndex valueOf(Index object) { return new DaIndexImpl(object, schemaStrategy, extraIndexInfoMap.get(object.getName())); } }) .reject(new Predicate<DaIndex>() { @Override public boolean accept(DaIndex index) { ExtraIndexInfo extraIndexInfo = extraIndexInfoMap.get(index.getName()); return extraIndexInfo != null && extraIndexInfo.isConstraint(); } }) .toImmutable(); }
final Collection<Index> indexesCollection = table.getIndexes(); final List<Index> indexes = new ArrayList<>(indexesCollection); Collections
final Collection<Index> indexesCollection = table.getIndexes(); final List<Index> indexes = new ArrayList<>(indexesCollection); Collections
printIndexes(table.getIndexes()); printTriggers(table.getTriggers()); printTableConstraints(table.getTableConstraints());
printIndexes(table.getIndexes()); printTriggers(table.getTriggers()); printTableConstraints(table.getTableConstraints());