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

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

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

Table.setSelectTransformation介绍

暂无

代码示例

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

private Table add_pg_am() {
  Table t = createView("pg_am"); //$NON-NLS-1$ 
  addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$ 
  addColumn("amname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  String transformation = "SELECT 0 as oid, 'btree' as amname"; //$NON-NLS-1$
  t.setSelectTransformation(transformation);
  
  return t;		
}

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

private void add_pg_inherits() {
  Table t = createView("pg_inherits"); //$NON-NLS-1$ 
  addColumn("inhrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$ 
  addColumn("inhparent", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
  addColumn("inhseqno", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
  
  String transformation = "SELECT null, null, null from SYS.Tables WHERE 1=2"; //$NON-NLS-1$
  t.setSelectTransformation(transformation);
}

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

private void add_pg_stats() {
  Table t = createView("pg_stats"); //$NON-NLS-1$ 
  addColumn("schemaname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  addColumn("tablename", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("attname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  
  String transformation = "SELECT null, null, null from SYS.Tables WHERE 1=2"; //$NON-NLS-1$
  t.setSelectTransformation(transformation);
}

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

private Table add_pg_namespace() {
  Table t = createView("pg_namespace"); //$NON-NLS-1$ 
  addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$ 
  addColumn("nspname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  addColumn("nspowner", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
  
  String transformation = "SELECT pg_catalog.getOid(uid) as oid, t1.Name as nspname, 0 as nspowner " + //$NON-NLS-1$
  "FROM SYS.Schemas as t1"; //$NON-NLS-1$
  t.setSelectTransformation(transformation);
  return t;		
}

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

public void setViewDefinition(final String tableName, final String definition, boolean updateFunctional) {
  if (!assertInEditMode(Mode.SCHEMA)) {
    return;
  }
  assertGrant(Grant.Permission.Privilege.ALTER, Database.ResourceType.TABLE, getCurrentSchema().getTable(tableName));
  verifyTableExists(tableName).setSelectTransformation(definition);
}

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

private void add_pg_prepared_xacts() {
  Table t = createView("pg_prepared_xacts"); //$NON-NLS-1$ 
  //xid
  addColumn("transaction", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  addColumn("gid", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("owner", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("database", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  
  String transformation = "SELECT null, null, null, null from SYS.Tables WHERE 1=2"; //$NON-NLS-1$
  t.setSelectTransformation(transformation);
}

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

private Table add_infoSchemaTables() {
  Table t = createView("information_schema.tables"); //$NON-NLS-1$ 
  addColumn("table_catalog", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("table_schema", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  addColumn("table_name", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("table_type", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  t.setSelectTransformation("select vdbname, schemaName, name," + //$NON-NLS-1$
      " case when IsSystem then 'SYSTEM ' else '' end || case when IsPhysical then 'BASE TABLE' else 'VIEW' end from sys.tables"); //$NON-NLS-1$
  return t;
}

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

private Table add_pg_description() {
  Table t = createView("pg_description"); //$NON-NLS-1$ 
  addColumn("objoid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$ 
  addColumn("classoid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
  addColumn("objsubid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
  addColumn("description", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  String transformation = "SELECT 0, null, null, null"; //$NON-NLS-1$
  t.setSelectTransformation(transformation);
  
  return t;		
}

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

private Table add_pg_attrdef() {
  Table t = createView("pg_attrdef"); //$NON-NLS-1$ 
  addColumn("adrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$ 
  addColumn("adnum", DataTypeManager.DefaultDataTypes.SHORT, t); //$NON-NLS-1$
  addColumn("adbin", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("adsrc", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  
  String transformation = "SELECT pg_catalog.getOid(t1.tableuid) as adrelid, convert(t1.Position, short) as adnum, " + //$NON-NLS-1$
      "case when t1.IsAutoIncremented then 'nextval(' else t1.DefaultValue end as adbin, " + //$NON-NLS-1$
      "case when t1.IsAutoIncremented then 'nextval(' else t1.DefaultValue end as adsrc " + //$NON-NLS-1$
      "FROM SYS.Columns as t1"; //$NON-NLS-1$
  t.setSelectTransformation(transformation);
  return t;		
}

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

private Table add_infoSchemaViews() {
  Table t = createView("information_schema.views"); //$NON-NLS-1$ 
  addColumn("table_catalog", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("table_schema", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  addColumn("table_name", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("check_option", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("is_updatable", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  t.setSelectTransformation("select vdbname, schemaName, name, 'NONE', case when SupportsUpdates then 'YES' else 'NO' end from sys.tables where IsPhysical"); //$NON-NLS-1$
  return t;
}

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

private Table add_pg_user()  {
  Table t = createView("pg_user"); //$NON-NLS-1$ 
  addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$ 
  addColumn("usename", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("usesysid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
  addColumn("usecreatedb", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$ 
  addColumn("usesuper", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$ 
  
  String transformation = "SELECT 0 as oid, " + //$NON-NLS-1$
      "user(false) as usename, 0 as usesysid," + //$NON-NLS-1$
      "false as usecreatedb, " + //$NON-NLS-1$
      "false as usesuper "; //$NON-NLS-1$
  t.setSelectTransformation(transformation);	
  return t;
}

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

public void setViewDefinition(final String tableName, final String definition) {
  if (!assertInEditMode(Mode.SCHEMA)) {
    return;
  }
  Table table = (Table)getSchemaRecord(tableName, ResourceType.TABLE);
  if (!table.isVirtual()) {
    throw new org.teiid.metadata.MetadataException(QueryPlugin.Event.TEIID31238,
        QueryPlugin.Util.gs(QueryPlugin.Event.TEIID31238, table.getFullName()));
  }
  assertGrant(Grant.Permission.Privilege.ALTER, Database.ResourceType.TABLE, table);
  table.setSelectTransformation(definition);
}

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

public void setViewDefinition(final String tableName, final String definition) {
  if (!assertInEditMode(Mode.SCHEMA)) {
    return;
  }
  Table table = (Table)getSchemaRecord(tableName, ResourceType.TABLE);
  if (!table.isVirtual()) {
    throw new org.teiid.metadata.MetadataException(QueryPlugin.Event.TEIID31238,
        QueryPlugin.Util.gs(QueryPlugin.Event.TEIID31238, table.getFullName()));
  }
  assertGrant(Grant.Permission.Privilege.ALTER, Database.ResourceType.TABLE, table);
  table.setSelectTransformation(definition);
}

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

public static void alterView(final VDBMetaData vdb, final Table t, final String sql, boolean updateStore) {
  TransformationMetadata metadata = vdb.getAttachment(TransformationMetadata.class);
  DatabaseStore store = vdb.getAttachment(DatabaseStore.class);
  
  try {
    Command command = QueryParser.getQueryParser().parseCommand(t.getSelectTransformation());
    QueryResolver.resolveCommand(command, metadata);
    MetadataValidator.determineDependencies(t, command);
  } catch (TeiidException e) {
    //should have been caught in validation, but this logic
    //is also not mature so since there is no lock on the vdb
    //it is possible that the plan is no longer valid at this point due
    //to a concurrent execution
  }
  t.setSelectTransformation(sql);
  t.setLastModified(System.currentTimeMillis());
  metadata.addToMetadataCache(t, "transformation/"+SQLConstants.Reserved.SELECT, null); //$NON-NLS-1$
}

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

public static void alterView(final VDBMetaData vdb, final Table t, final String sql, boolean updateStore) {
  TransformationMetadata metadata = vdb.getAttachment(TransformationMetadata.class);
  DatabaseStore store = vdb.getAttachment(DatabaseStore.class);
  
  try {
    Command command = QueryParser.getQueryParser().parseCommand(t.getSelectTransformation());
    QueryResolver.resolveCommand(command, metadata);
    MetadataValidator.determineDependencies(t, command);
  } catch (TeiidException e) {
    //should have been caught in validation, but this logic
    //is also not mature so since there is no lock on the vdb
    //it is possible that the plan is no longer valid at this point due
    //to a concurrent execution
  }
  t.setSelectTransformation(sql);
  t.setLastModified(System.currentTimeMillis());
  metadata.addToMetadataCache(t, "transformation/"+SQLConstants.Reserved.SELECT, null); //$NON-NLS-1$
}

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

public static void alterView(final VDBMetaData vdb, final Table t, final String sql, boolean updateStore) {
  TransformationMetadata metadata = vdb.getAttachment(TransformationMetadata.class);
  DatabaseStore store = vdb.getAttachment(DatabaseStore.class);
  
  try {
    Command command = QueryParser.getQueryParser().parseCommand(t.getSelectTransformation());
    QueryResolver.resolveCommand(command, metadata);
    MetadataValidator.determineDependencies(t, command);
  } catch (TeiidException e) {
    //should have been caught in validation, but this logic
    //is also not mature so since there is no lock on the vdb
    //it is possible that the plan is no longer valid at this point due
    //to a concurrent execution
  }
  t.setSelectTransformation(sql);
  t.setLastModified(System.currentTimeMillis());
  metadata.addToMetadataCache(t, "transformation/"+SQLConstants.Reserved.SELECT, null); //$NON-NLS-1$
}

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

private Table add_infoSchemaReferentialConstraints() {
  Table t = createView("information_schema.referential_constraints"); //$NON-NLS-1$ 
  addColumn("constraint_catalog", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("constraint_schema", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  addColumn("constraint_name", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("unique_constraint_catalog", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("unique_constraint_schema", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("unique_constraint_name", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("match_option", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("update_rule", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("delete_rule", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  t.setSelectTransformation("select PKTABLE_CAT, PKTABLE_SCHEM, PK_NAME, FKTABLE_CAT, FKTABLE_SCHEM, FK_NAME, 'NONE', 'NO ACTION', 'NO ACTION' FROM SYS.ReferenceKeyColumns " //$NON-NLS-1$
      + "group by PKTABLE_CAT, PKTABLE_SCHEM, PKTABLE_NAME, FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, FK_NAME, PK_NAME"); //$NON-NLS-1$
  return t;
}

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

private Table add_infoSchemaKeyColumnUsage() {
  Table t = createView("information_schema.key_column_usage"); //$NON-NLS-1$ 
  addColumn("constraint_catalog", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("constraint_schema", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  addColumn("constraint_name", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("table_catalog", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("table_schema", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  addColumn("table_name", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("column_name", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("ordinal_position", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
  addColumn("position_in_unique_constraint", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
  t.setSelectTransformation("select VDBName, SchemaName, KeyName, VDBName, SchemaName, TableName, Name, KeyColumns.Position, case when RefKeyUID is not null then KeyColumns.Position end " //$NON-NLS-1$
      + "FROM SYS.KeyColumns"); //$NON-NLS-1$
  return t;
}

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

private Table add_infoSchemaTableConstraints() {
  Table t = createView("information_schema.table_constraints"); //$NON-NLS-1$ 
  addColumn("constraint_catalog", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("constraint_schema", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  addColumn("constraint_name", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("table_catalog", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("table_schema", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$ 
  addColumn("table_name", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("constraint_type", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("is_deferrable", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  addColumn("initially_deferred", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
  t.setSelectTransformation("select VDBName, SchemaName, Name, VDBName, SchemaName, TableName, upper(Keys.Type || case when Keys.Type in ('Primary', 'Foreign') then ' Key' else '' end), 'NO', 'NO' " //$NON-NLS-1$
      + "FROM SYS.Keys where Keys.Type in ('Primary', 'Foreign', 'Unique')"); //$NON-NLS-1$
  return t;
}

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

/**
 * Create a virtual group with default settings.
 */
public static Table createVirtualGroup(String name, Schema model, QueryNode plan) {
  Table table = new Table();
  table.setName(name);
  model.addTable(table);
  table.setVirtual(true);
  table.setTableType(org.teiid.metadata.Table.Type.View);
  table.setSelectTransformation(plan.getQuery());
  return table;
}

相关文章

微信公众号

最新文章

更多