org.teiid.metadata.Table.getFunctionBasedIndexes()方法的使用及代码示例

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

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

Table.getFunctionBasedIndexes介绍

暂无

代码示例

代码示例来源:origin: org.teiid/teiid-engine

KeyRecord addFBI(MetadataFactory factory, List<Expression> expressions, Table table, String name) throws MetadataException {
  List<String> columnNames = new ArrayList<String>(expressions.size());
  List<Boolean> nonColumnExpressions = new ArrayList<Boolean>(expressions.size());
  boolean fbi = false;
  for (int i = 0; i < expressions.size(); i++) {
    Expression ex = expressions.get(i);
    if (ex instanceof ElementSymbol) {
       columnNames.add(((ElementSymbol)ex).getName());
       nonColumnExpressions.add(Boolean.FALSE);
    } else {
      columnNames.add(ex.toString());
      nonColumnExpressions.add(Boolean.TRUE);
      fbi = true;
    }
  }
  return factory.addFunctionBasedIndex(name != null?name:(SQLConstants.NonReserved.INDEX+(fbi?table.getFunctionBasedIndexes().size():table.getIndexes().size())), columnNames, nonColumnExpressions, table);
}

代码示例来源:origin: org.jboss.teiid/teiid-engine

KeyRecord addFBI(MetadataFactory factory, List<Expression> expressions, Table table, String name) throws MetadataException {
  List<String> columnNames = new ArrayList<String>(expressions.size());
  List<Boolean> nonColumnExpressions = new ArrayList<Boolean>(expressions.size());
  boolean fbi = false;
  for (int i = 0; i < expressions.size(); i++) {
    Expression ex = expressions.get(i);
    if (ex instanceof ElementSymbol) {
       columnNames.add(((ElementSymbol)ex).getName());
       nonColumnExpressions.add(Boolean.FALSE);
    } else {
      columnNames.add(ex.toString());
      nonColumnExpressions.add(Boolean.TRUE);
      fbi = true;
    }
  }
  return factory.addFunctionBasedIndex(name != null?name:(SQLConstants.NonReserved.INDEX+(fbi?table.getFunctionBasedIndexes().size():table.getIndexes().size())), columnNames, nonColumnExpressions, table);
}

代码示例来源:origin: teiid/teiid

KeyRecord addFBI(MetadataFactory factory, List<Expression> expressions, Table table, String name) throws MetadataException {
  List<String> columnNames = new ArrayList<String>(expressions.size());
  List<Boolean> nonColumnExpressions = new ArrayList<Boolean>(expressions.size());
  boolean fbi = false;
  for (int i = 0; i < expressions.size(); i++) {
    Expression ex = expressions.get(i);
    if (ex instanceof ElementSymbol) {
       columnNames.add(((ElementSymbol)ex).getName());
       nonColumnExpressions.add(Boolean.FALSE);
    } else {
      columnNames.add(ex.toString());
      nonColumnExpressions.add(Boolean.TRUE);
      fbi = true;
    }
  }
  return factory.addFunctionBasedIndex(name != null?name:(SQLConstants.NonReserved.INDEX+(fbi?table.getFunctionBasedIndexes().size():table.getIndexes().size())), columnNames, nonColumnExpressions, table);
}

代码示例来源:origin: teiid/teiid

table.getIndexes().add(index);
} else {
  table.getFunctionBasedIndexes().add(index);

代码示例来源:origin: teiid/teiid

@Test public void testFBI() throws Exception {
  String ddl = "CREATE FOREIGN TABLE G1(e1 integer, e2 varchar, CONSTRAINT fbi INDEX (UPPER(e2)))";
  Schema s = helpParse(ddl, "model").getSchema();
  Map<String, Table> tableMap = s.getTables();    
  
  Table table = tableMap.get("G1");
  
  assertEquals(1, table.getFunctionBasedIndexes().size());
}

代码示例来源:origin: org.jboss.teiid/teiid-engine

if (viewId instanceof Table) {
  Table t = (Table)viewId;
  List<KeyRecord> fbis = t.getFunctionBasedIndexes();
  if (!fbis.isEmpty()) {
    List<GroupSymbol> groups = Arrays.asList(group);
  List<KeyRecord> fbis = table.getFunctionBasedIndexes();
  for (KeyRecord keyRecord : fbis) {
    id.addIndex(keyRecord, resolveIndex(metadata, id, keyRecord));

代码示例来源:origin: teiid/teiid

if (viewId instanceof Table) {
  Table t = (Table)viewId;
  List<KeyRecord> fbis = t.getFunctionBasedIndexes();
  if (!fbis.isEmpty()) {
    List<GroupSymbol> groups = Arrays.asList(group);
  List<KeyRecord> fbis = table.getFunctionBasedIndexes();
  for (KeyRecord keyRecord : fbis) {
    id.addIndex(keyRecord, resolveIndex(metadata, id, keyRecord));

代码示例来源:origin: org.teiid/teiid-engine

if (viewId instanceof Table) {
  Table t = (Table)viewId;
  List<KeyRecord> fbis = t.getFunctionBasedIndexes();
  if (!fbis.isEmpty()) {
    List<GroupSymbol> groups = Arrays.asList(group);
  List<KeyRecord> fbis = table.getFunctionBasedIndexes();
  for (KeyRecord keyRecord : fbis) {
    id.addIndex(keyRecord, resolveIndex(metadata, id, keyRecord));

代码示例来源:origin: teiid/teiid

validateConstraintNames(metadataValidator, report, model, t.getFunctionBasedIndexes(), names);

代码示例来源:origin: org.teiid/teiid-engine

validateConstraintNames(metadataValidator, report, model, t.getFunctionBasedIndexes(), names);

代码示例来源:origin: org.jboss.teiid/teiid-engine

validateConstraintNames(metadataValidator, report, model, t.getFunctionBasedIndexes(), names);

代码示例来源:origin: teiid/teiid

List<KeyRecord> fbis = t.getFunctionBasedIndexes();
List<GroupSymbol> groups = Arrays.asList(symbol);
if (fbis != null && !fbis.isEmpty()) {

代码示例来源:origin: org.jboss.teiid/teiid-engine

private void buildContraints(Table table) {
  addConstraints(table.getAccessPatterns(), "AP", ACCESSPATTERN); //$NON-NLS-1$
  
  KeyRecord pk = table.getPrimaryKey();
  if (pk != null) {
    addConstraint("PK", PRIMARY_KEY, pk, true); //$NON-NLS-1$
  }
  addConstraints(table.getUniqueKeys(), UNIQUE, UNIQUE);
  addConstraints(table.getIndexes(), INDEX, INDEX);
  addConstraints(table.getFunctionBasedIndexes(), INDEX, INDEX);
  for (int i = 0; i < table.getForeignKeys().size(); i++) {
    ForeignKey key = table.getForeignKeys().get(i);
    addConstraint("FK" + i, FOREIGN_KEY, key, false); //$NON-NLS-1$
    append(SPACE).append(REFERENCES);
    if (key.getReferenceKey() != null) {
      if (key.getReferenceKey().getParent().getParent().equals(key.getParent().getParent())) {
        append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getName()));
      } else {
        append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getFullName()));
      }
    } else if (key.getReferenceTableName() != null) {
      append(SPACE).append(new GroupSymbol(key.getReferenceTableName()));
    }
    append(SPACE);
    addNames(key.getReferenceColumns());
    appendOptions(key);
  }
}

代码示例来源:origin: org.teiid/teiid-engine

private void buildContraints(Table table) {
  addConstraints(table.getAccessPatterns(), "AP", ACCESSPATTERN); //$NON-NLS-1$
  
  KeyRecord pk = table.getPrimaryKey();
  if (pk != null) {
    addConstraint("PK", PRIMARY_KEY, pk, true); //$NON-NLS-1$
  }
  addConstraints(table.getUniqueKeys(), UNIQUE, UNIQUE);
  addConstraints(table.getIndexes(), INDEX, INDEX);
  addConstraints(table.getFunctionBasedIndexes(), INDEX, INDEX);
  for (int i = 0; i < table.getForeignKeys().size(); i++) {
    ForeignKey key = table.getForeignKeys().get(i);
    addConstraint("FK" + i, FOREIGN_KEY, key, false); //$NON-NLS-1$
    append(SPACE).append(REFERENCES);
    if (key.getReferenceKey() != null) {
      if (key.getReferenceKey().getParent().getParent().equals(key.getParent().getParent())) {
        append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getName()));
      } else {
        append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getFullName()));
      }
    } else if (key.getReferenceTableName() != null) {
      append(SPACE).append(new GroupSymbol(key.getReferenceTableName()));
    }
    append(SPACE);
    addNames(key.getReferenceColumns());
    appendOptions(key);
  }
}

代码示例来源:origin: teiid/teiid

private void buildContraints(Table table) {
  addConstraints(table.getAccessPatterns(), "AP", ACCESSPATTERN); //$NON-NLS-1$
  
  KeyRecord pk = table.getPrimaryKey();
  if (pk != null) {
    addConstraint("PK", PRIMARY_KEY, pk, true); //$NON-NLS-1$
  }
  addConstraints(table.getUniqueKeys(), UNIQUE, UNIQUE);
  addConstraints(table.getIndexes(), INDEX, INDEX);
  addConstraints(table.getFunctionBasedIndexes(), INDEX, INDEX);
  for (int i = 0; i < table.getForeignKeys().size(); i++) {
    ForeignKey key = table.getForeignKeys().get(i);
    addConstraint("FK" + i, FOREIGN_KEY, key, false); //$NON-NLS-1$
    append(SPACE).append(REFERENCES);
    if (key.getReferenceKey() != null) {
      if (key.getReferenceKey().getParent().getParent().equals(key.getParent().getParent())) {
        append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getName()));
      } else {
        append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getFullName()));
      }
    } else if (key.getReferenceTableName() != null) {
      append(SPACE).append(new GroupSymbol(key.getReferenceTableName()));
    }
    append(SPACE);
    addNames(key.getReferenceColumns());
    appendOptions(key);
  }
}

代码示例来源:origin: org.teiid/teiid-engine

List<KeyRecord> fbis = t.getFunctionBasedIndexes();
List<GroupSymbol> groups = Arrays.asList(symbol);
if (fbis != null && !fbis.isEmpty()) {

代码示例来源:origin: org.jboss.teiid/teiid-engine

List<KeyRecord> fbis = t.getFunctionBasedIndexes();
List<GroupSymbol> groups = Arrays.asList(symbol);
if (fbis != null && !fbis.isEmpty()) {

代码示例来源:origin: teiid/teiid

c.setNameInSource("upper(x)");
fbi.addColumn(c);
vGroup2a.getFunctionBasedIndexes().add(fbi);
vGroup2.setMaterialized(true);
createElements(vGroup2a,

相关文章

微信公众号

最新文章

更多