/** * This method will alias each of the select into elements to the corresponding column name in the * target table. This ensures that they will all be uniquely named. * * @param query * @throws QueryValidatorException */ private Command rewriteSelectInto(Query query) throws TeiidProcessingException{ Into into = query.getInto(); try { List<ElementSymbol> allIntoElements = Util.deepClone(ResolverUtil.resolveElementsInGroup(into.getGroup(), metadata), ElementSymbol.class); Insert insert = new Insert(into.getGroup(), allIntoElements, Collections.emptyList()); insert.setSourceHint(query.getSourceHint()); query.setSourceHint(null); query.setInto(null); insert.setQueryExpression(query); return rewriteInsert(correctDatatypes(insert)); } catch (QueryMetadataException e) { throw new QueryValidatorException(e); } catch (TeiidComponentException e) { throw new QueryValidatorException(e); } }
/** * This method will alias each of the select into elements to the corresponding column name in the * target table. This ensures that they will all be uniquely named. * * @param query * @throws QueryValidatorException */ private Command rewriteSelectInto(Query query) throws TeiidProcessingException{ Into into = query.getInto(); try { List<ElementSymbol> allIntoElements = Util.deepClone(ResolverUtil.resolveElementsInGroup(into.getGroup(), metadata), ElementSymbol.class); Insert insert = new Insert(into.getGroup(), allIntoElements, Collections.emptyList()); insert.setSourceHint(query.getSourceHint()); query.setSourceHint(null); query.setInto(null); insert.setQueryExpression(query); return rewriteInsert(correctDatatypes(insert)); } catch (QueryMetadataException e) { throw new QueryValidatorException(e); } catch (TeiidComponentException e) { throw new QueryValidatorException(e); } }
/** * This method will alias each of the select into elements to the corresponding column name in the * target table. This ensures that they will all be uniquely named. * * @param query * @throws QueryValidatorException */ private Command rewriteSelectInto(Query query) throws TeiidProcessingException{ Into into = query.getInto(); try { List<ElementSymbol> allIntoElements = Util.deepClone(ResolverUtil.resolveElementsInGroup(into.getGroup(), metadata), ElementSymbol.class); Insert insert = new Insert(into.getGroup(), allIntoElements, Collections.emptyList()); insert.setSourceHint(query.getSourceHint()); query.setSourceHint(null); query.setInto(null); insert.setQueryExpression(query); return rewriteInsert(correctDatatypes(insert)); } catch (QueryMetadataException e) { throw new QueryValidatorException(e); } catch (TeiidComponentException e) { throw new QueryValidatorException(e); } }
public void testClone3() { Query q = sample2(); q.setInto(new Into(new GroupSymbol("#foo"))); //$NON-NLS-1$ Query qclone = (Query)q.clone(); assertNotNull(qclone.getInto()); } }
query.setSelect( select ); query.setFrom( from ); query.setInto( into ); query.setCriteria(criteria); query.setGroupBy(groupBy);
query.setSelect( select ); query.setFrom( from ); query.setInto( into ); query.setCriteria(criteria); query.setGroupBy(groupBy);
query.setSelect( select ); query.setFrom( from ); query.setInto( into ); query.setCriteria(criteria); query.setGroupBy(groupBy);
GroupSymbol intoGroupSymbol = new GroupSymbol(intoGroupName); query.setInto(new Into(intoGroupSymbol));
@Test public void testSelectInto(){ GroupSymbol g = new GroupSymbol("m.g"); //$NON-NLS-1$ From from = new From(); from.addGroup(g); Select select = new Select(); ElementSymbol c1 = new ElementSymbol("c1", false); //$NON-NLS-1$ select.addSymbol(c1); select.addSymbol(new ElementSymbol("c2", false)); //$NON-NLS-1$ Into into = new Into(new GroupSymbol("#temp")); //$NON-NLS-1$ Query q = new Query(); q.setSelect(select); q.setFrom(from); q.setInto(into); helpTest("SELECT c1, c2 INTO #temp FROM m.g", //$NON-NLS-1$ "SELECT c1, c2 INTO #temp FROM m.g", //$NON-NLS-1$ q); }