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

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

本文整理了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

  1. KeyRecord addFBI(MetadataFactory factory, List<Expression> expressions, Table table, String name) throws MetadataException {
  2. List<String> columnNames = new ArrayList<String>(expressions.size());
  3. List<Boolean> nonColumnExpressions = new ArrayList<Boolean>(expressions.size());
  4. boolean fbi = false;
  5. for (int i = 0; i < expressions.size(); i++) {
  6. Expression ex = expressions.get(i);
  7. if (ex instanceof ElementSymbol) {
  8. columnNames.add(((ElementSymbol)ex).getName());
  9. nonColumnExpressions.add(Boolean.FALSE);
  10. } else {
  11. columnNames.add(ex.toString());
  12. nonColumnExpressions.add(Boolean.TRUE);
  13. fbi = true;
  14. }
  15. }
  16. return factory.addFunctionBasedIndex(name != null?name:(SQLConstants.NonReserved.INDEX+(fbi?table.getFunctionBasedIndexes().size():table.getIndexes().size())), columnNames, nonColumnExpressions, table);
  17. }

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

  1. KeyRecord addFBI(MetadataFactory factory, List<Expression> expressions, Table table, String name) throws MetadataException {
  2. List<String> columnNames = new ArrayList<String>(expressions.size());
  3. List<Boolean> nonColumnExpressions = new ArrayList<Boolean>(expressions.size());
  4. boolean fbi = false;
  5. for (int i = 0; i < expressions.size(); i++) {
  6. Expression ex = expressions.get(i);
  7. if (ex instanceof ElementSymbol) {
  8. columnNames.add(((ElementSymbol)ex).getName());
  9. nonColumnExpressions.add(Boolean.FALSE);
  10. } else {
  11. columnNames.add(ex.toString());
  12. nonColumnExpressions.add(Boolean.TRUE);
  13. fbi = true;
  14. }
  15. }
  16. return factory.addFunctionBasedIndex(name != null?name:(SQLConstants.NonReserved.INDEX+(fbi?table.getFunctionBasedIndexes().size():table.getIndexes().size())), columnNames, nonColumnExpressions, table);
  17. }

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

  1. KeyRecord addFBI(MetadataFactory factory, List<Expression> expressions, Table table, String name) throws MetadataException {
  2. List<String> columnNames = new ArrayList<String>(expressions.size());
  3. List<Boolean> nonColumnExpressions = new ArrayList<Boolean>(expressions.size());
  4. boolean fbi = false;
  5. for (int i = 0; i < expressions.size(); i++) {
  6. Expression ex = expressions.get(i);
  7. if (ex instanceof ElementSymbol) {
  8. columnNames.add(((ElementSymbol)ex).getName());
  9. nonColumnExpressions.add(Boolean.FALSE);
  10. } else {
  11. columnNames.add(ex.toString());
  12. nonColumnExpressions.add(Boolean.TRUE);
  13. fbi = true;
  14. }
  15. }
  16. return factory.addFunctionBasedIndex(name != null?name:(SQLConstants.NonReserved.INDEX+(fbi?table.getFunctionBasedIndexes().size():table.getIndexes().size())), columnNames, nonColumnExpressions, table);
  17. }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  1. private void buildContraints(Table table) {
  2. addConstraints(table.getAccessPatterns(), "AP", ACCESSPATTERN); //$NON-NLS-1$
  3. KeyRecord pk = table.getPrimaryKey();
  4. if (pk != null) {
  5. addConstraint("PK", PRIMARY_KEY, pk, true); //$NON-NLS-1$
  6. }
  7. addConstraints(table.getUniqueKeys(), UNIQUE, UNIQUE);
  8. addConstraints(table.getIndexes(), INDEX, INDEX);
  9. addConstraints(table.getFunctionBasedIndexes(), INDEX, INDEX);
  10. for (int i = 0; i < table.getForeignKeys().size(); i++) {
  11. ForeignKey key = table.getForeignKeys().get(i);
  12. addConstraint("FK" + i, FOREIGN_KEY, key, false); //$NON-NLS-1$
  13. append(SPACE).append(REFERENCES);
  14. if (key.getReferenceKey() != null) {
  15. if (key.getReferenceKey().getParent().getParent().equals(key.getParent().getParent())) {
  16. append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getName()));
  17. } else {
  18. append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getFullName()));
  19. }
  20. } else if (key.getReferenceTableName() != null) {
  21. append(SPACE).append(new GroupSymbol(key.getReferenceTableName()));
  22. }
  23. append(SPACE);
  24. addNames(key.getReferenceColumns());
  25. appendOptions(key);
  26. }
  27. }

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

  1. private void buildContraints(Table table) {
  2. addConstraints(table.getAccessPatterns(), "AP", ACCESSPATTERN); //$NON-NLS-1$
  3. KeyRecord pk = table.getPrimaryKey();
  4. if (pk != null) {
  5. addConstraint("PK", PRIMARY_KEY, pk, true); //$NON-NLS-1$
  6. }
  7. addConstraints(table.getUniqueKeys(), UNIQUE, UNIQUE);
  8. addConstraints(table.getIndexes(), INDEX, INDEX);
  9. addConstraints(table.getFunctionBasedIndexes(), INDEX, INDEX);
  10. for (int i = 0; i < table.getForeignKeys().size(); i++) {
  11. ForeignKey key = table.getForeignKeys().get(i);
  12. addConstraint("FK" + i, FOREIGN_KEY, key, false); //$NON-NLS-1$
  13. append(SPACE).append(REFERENCES);
  14. if (key.getReferenceKey() != null) {
  15. if (key.getReferenceKey().getParent().getParent().equals(key.getParent().getParent())) {
  16. append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getName()));
  17. } else {
  18. append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getFullName()));
  19. }
  20. } else if (key.getReferenceTableName() != null) {
  21. append(SPACE).append(new GroupSymbol(key.getReferenceTableName()));
  22. }
  23. append(SPACE);
  24. addNames(key.getReferenceColumns());
  25. appendOptions(key);
  26. }
  27. }

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

  1. private void buildContraints(Table table) {
  2. addConstraints(table.getAccessPatterns(), "AP", ACCESSPATTERN); //$NON-NLS-1$
  3. KeyRecord pk = table.getPrimaryKey();
  4. if (pk != null) {
  5. addConstraint("PK", PRIMARY_KEY, pk, true); //$NON-NLS-1$
  6. }
  7. addConstraints(table.getUniqueKeys(), UNIQUE, UNIQUE);
  8. addConstraints(table.getIndexes(), INDEX, INDEX);
  9. addConstraints(table.getFunctionBasedIndexes(), INDEX, INDEX);
  10. for (int i = 0; i < table.getForeignKeys().size(); i++) {
  11. ForeignKey key = table.getForeignKeys().get(i);
  12. addConstraint("FK" + i, FOREIGN_KEY, key, false); //$NON-NLS-1$
  13. append(SPACE).append(REFERENCES);
  14. if (key.getReferenceKey() != null) {
  15. if (key.getReferenceKey().getParent().getParent().equals(key.getParent().getParent())) {
  16. append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getName()));
  17. } else {
  18. append(SPACE).append(new GroupSymbol(key.getReferenceKey().getParent().getFullName()));
  19. }
  20. } else if (key.getReferenceTableName() != null) {
  21. append(SPACE).append(new GroupSymbol(key.getReferenceTableName()));
  22. }
  23. append(SPACE);
  24. addNames(key.getReferenceColumns());
  25. appendOptions(key);
  26. }
  27. }

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

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

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

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

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

  1. c.setNameInSource("upper(x)");
  2. fbi.addColumn(c);
  3. vGroup2a.getFunctionBasedIndexes().add(fbi);
  4. vGroup2.setMaterialized(true);
  5. createElements(vGroup2a,

相关文章