public boolean isShallowQuery() { // select clauses for insert statements should alwasy be treated as shallow return getStatementType() == INSERT || queryTranslatorImpl.isShallowQuery(); }
private boolean isManipulationQuery() { return fromElement.getWalker().getStatementType() == HqlSqlTokenTypes.UPDATE || fromElement.getWalker().getStatementType() == HqlSqlTokenTypes.DELETE; }
private boolean isInsertQuery() { return fromElement.getWalker().getStatementType() == HqlSqlTokenTypes.INSERT; }
private boolean isUpdateQuery() { return fromElement.getWalker().getStatementType() == HqlSqlTokenTypes.UPDATE; }
@SuppressWarnings("SimplifiableIfStatement") protected boolean isFromElementUpdateOrDeleteRoot(FromElement element) { if ( element.getFromClause().getParentFromClause() != null ) { // its not even a root... return false; } return getWalker().getStatementType() == HqlSqlTokenTypes.DELETE || getWalker().getStatementType() == HqlSqlTokenTypes.UPDATE; }
public String[] getIdentityColumns() { checkInitialized(); final String table = getTableAlias(); if ( table == null ) { throw new IllegalStateException( "No table alias for node " + this ); } final String[] propertyNames = getIdentifierPropertyNames(); List<String> columns = new ArrayList<>(); for ( int i = 0; i < propertyNames.length; i++ ) { String[] propertyNameColumns = toColumns( table, propertyNames[i], getWalker().getStatementType() == HqlSqlTokenTypes.SELECT ); for ( int j = 0; j < propertyNameColumns.length; j++ ) { columns.add( propertyNameColumns[j] ); } } return columns.toArray( new String[columns.size()] ); }
private StatementExecutor buildAppropriateStatementExecutor(HqlSqlWalker walker) { final Statement statement = (Statement) walker.getAST(); if ( walker.getStatementType() == HqlSqlTokenTypes.DELETE ) { final FromElement fromElement = walker.getFinalFromClause().getFromElement(); final Queryable persister = fromElement.getQueryable(); else if ( walker.getStatementType() == HqlSqlTokenTypes.UPDATE ) { final FromElement fromElement = walker.getFinalFromClause().getFromElement(); final Queryable persister = fromElement.getQueryable(); else if ( walker.getStatementType() == HqlSqlTokenTypes.INSERT ) { return new BasicExecutor( walker, ( (InsertStatement) statement ).getIntoClause().getQueryable() );
if ( getParameterPositions().size() > 0 && getWalker().getStatementType() != HqlSqlTokenTypes.INSERT ) { throw new QueryException( "Parameters are only supported in SELECT clauses when used as part of a INSERT INTO DML statement" if ( getWalker().getStatementType() == HqlSqlTokenTypes.INSERT && inSubquery ) {
if ( getWalker().getStatementType() != SqlTokenTypes.SELECT ) { if ( isFromElementUpdateOrDeleteRoot( lhsFromElement ) ) { if ( getWalker().getStatementType() != SqlTokenTypes.INSERT ) { final Queryable persister = lhsFromElement.getQueryable(); if ( persister.isMultiTable() ) {
if ( fromElement.getWalker().getStatementType() == HqlSqlTokenTypes.SELECT ) { return propertyMapping.toColumns( tableAlias, path );
public boolean isShallowQuery() { // select clauses for insert statements should alwasy be treated as shallow return getStatementType() == INSERT || queryTranslatorImpl.isShallowQuery(); }
public boolean isShallowQuery() { // select clauses for insert statements should alwasy be treated as shallow return getStatementType() == INSERT || queryTranslatorImpl.isShallowQuery(); }
private StatementExecutor buildAppropriateStatementExecutor(HqlSqlWalker walker) { Statement statement = ( Statement ) walker.getAST(); if ( walker.getStatementType() == HqlSqlTokenTypes.DELETE ) { FromElement fromElement = walker.getFinalFromClause().getFromElement(); Queryable persister = fromElement.getQueryable(); else if ( walker.getStatementType() == HqlSqlTokenTypes.UPDATE ) { FromElement fromElement = walker.getFinalFromClause().getFromElement(); Queryable persister = fromElement.getQueryable(); else if ( walker.getStatementType() == HqlSqlTokenTypes.INSERT ) { return new BasicExecutor( walker, ( ( InsertStatement ) statement ).getIntoClause().getQueryable() );
private StatementExecutor buildAppropriateStatementExecutor(HqlSqlWalker walker) { Statement statement = ( Statement ) walker.getAST(); if ( walker.getStatementType() == HqlSqlTokenTypes.DELETE ) { FromElement fromElement = walker.getFinalFromClause().getFromElement(); Queryable persister = fromElement.getQueryable(); else if ( walker.getStatementType() == HqlSqlTokenTypes.UPDATE ) { FromElement fromElement = walker.getFinalFromClause().getFromElement(); Queryable persister = fromElement.getQueryable(); else if ( walker.getStatementType() == HqlSqlTokenTypes.INSERT ) { return new BasicExecutor( walker, ( ( InsertStatement ) statement ).getIntoClause().getQueryable() );
public String getIdentityColumn() { checkInitialized(); String table = getTableAlias(); if ( table == null ) { throw new IllegalStateException( "No table alias for node " + this ); } String[] cols; String propertyName; if ( getEntityPersister() != null && getEntityPersister().getEntityMetamodel() != null && getEntityPersister().getEntityMetamodel().hasNonIdentifierPropertyNamedId() ) { propertyName = getEntityPersister().getIdentifierPropertyName(); } else { propertyName = EntityPersister.ENTITY_ID; } if ( getWalker().getStatementType() == HqlSqlTokenTypes.SELECT ) { cols = getPropertyMapping( propertyName ).toColumns( table, propertyName ); } else { cols = getPropertyMapping( propertyName ).toColumns( propertyName ); } String result = StringHelper.join( ", ", cols ); return cols.length == 1 ? result : "(" + result + ")"; }
public String getIdentityColumn() { checkInitialized(); String table = getTableAlias(); if ( table == null ) { throw new IllegalStateException( "No table alias for node " + this ); } String[] cols; String propertyName; if ( getEntityPersister() != null && getEntityPersister().getEntityMetamodel() != null && getEntityPersister().getEntityMetamodel().hasNonIdentifierPropertyNamedId() ) { propertyName = getEntityPersister().getIdentifierPropertyName(); } else { propertyName = EntityPersister.ENTITY_ID; } if ( getWalker().getStatementType() == HqlSqlTokenTypes.SELECT ) { cols = getPropertyMapping( propertyName ).toColumns( table, propertyName ); } else { cols = getPropertyMapping( propertyName ).toColumns( propertyName ); } String result = StringHelper.join( ", ", cols ); return cols.length == 1 ? result : "(" + result + ")"; }
} else if (fromElement.getWalker().getStatementType() == HqlSqlTokenTypes.SELECT) { return propertyMapping.toColumns(tableAlias, path); } else if (fromElement.getWalker().getCurrentClauseType() == HqlSqlTokenTypes.SELECT) {
} else if (fromElement.getWalker().getStatementType() == HqlSqlTokenTypes.SELECT) { return propertyMapping.toColumns(tableAlias, path); } else if (fromElement.getWalker().getCurrentClauseType() == HqlSqlTokenTypes.SELECT) {
FromClause currentFromClause = getWalker().getCurrentFromClause(); if ( getWalker().getStatementType() != SqlTokenTypes.SELECT && indexed && classAlias == null ) {
FromClause currentFromClause = getWalker().getCurrentFromClause(); if ( getWalker().getStatementType() != SqlTokenTypes.SELECT && indexed && classAlias == null ) {