Select select = new Select( getDialect() ) .setLockOptions( lockOptions ) .setSelectClause( projection == null ? persister.selectFragment( alias, suffixes[joins] ) + selectString( associations ) : projection .setFromClause( getDialect().appendLockHint( lockOptions, persister.fromTableFragment( alias ) ) + persister.fromJoinFragment( alias, true, true ) .setWhereClause( condition ) .setOuterJoins( ojf.toFromFragmentString(), ojf.toWhereFragmentString() + getWhereFragment() .setOrderByClause( orderBy( associations, orderBy ) ) .setGroupByClause( groupBy ); select.setComment( getComment() ); sql = select.toStatementString();
final Select select = new Select( dialect ); final SelectValues selectClause = new SelectValues( dialect ).addColumns( tableAlias, ); addAnyExtraIdSelectValues( selectClause ); select.setSelectClause( selectClause.render() ); String whereJoinFragment = getTargetedQueryable().whereJoinFragment( tableAlias, true, false ); select.setFromClause( rootTableName + ' ' + tableAlias + fromJoinFragment ); select.setWhereClause( whereJoinFragment + whereClause.getUserWhereClauseFragment() ); return select;
String sql = new Select( factory.getDialect() ) .setWhereClause( innerQuery.getWhereCondition() ) .setGroupByClause( innerQuery.getGroupBy() ) .setSelectClause( innerQuery.getSelect() ) .setFromClause( persister.fromTableFragment( innerQuery.getRootSQLALias() ) + persister.fromJoinFragment( innerQuery.getRootSQLALias(), true, false ) .toStatementString();
public String toStatementString() { if ( tableName == null ) { throw new HibernateException( "no table name defined for insert-select" ); } if ( select == null ) { throw new HibernateException( "no select defined for insert-select" ); } StringBuilder buf = new StringBuilder( (columnNames.size() * 15) + tableName.length() + 10 ); if ( comment!=null ) { buf.append( "/* " ).append( comment ).append( " */ " ); } buf.append( "insert into " ).append( tableName ); if ( !columnNames.isEmpty() ) { buf.append( " (" ); Iterator itr = columnNames.iterator(); while ( itr.hasNext() ) { buf.append( itr.next() ); if ( itr.hasNext() ) { buf.append( ", " ); } } buf.append( ")" ); } buf.append( ' ' ).append( select.toStatementString() ); return buf.toString(); } }
public Select setSelectClause(SelectFragment selectFragment) { setSelectClause( selectFragment.toFragmentString().substring( 2 ) ); return this; }
/** * Generate the SQL that selects the version number by id */ protected String generateSelectVersionString() { SimpleSelect select = new SimpleSelect( getFactory().getDialect() ) .setTableName( getVersionedTableName() ); if ( isVersioned() ) { select.addColumn( versionColumnName ); } else { select.addColumns( rootTableKeyColumnNames ); } if ( getFactory().getSettings().isCommentsEnabled() ) { select.setComment( "get version " + getEntityName() ); } return select.addCondition( rootTableKeyColumnNames, "=?" ).toStatementString(); }
String sql = new Select( factory.getDialect() ) .setWhereClause( innerQuery.getWhereCondition() ) .setGroupByClause( innerQuery.getGroupBy() ) .setSelectClause( innerQuery.getSelect() ) .setFromClause( persister.fromTableFragment( innerQuery.getRootSQLALias() ) + persister.fromJoinFragment( innerQuery.getRootSQLALias(), true, false ) .toStatementString();
protected String generateIdInsertSelect(Queryable persister, String tableAlias, AST whereClause) { Select select = new Select( getFactory().getDialect() ); SelectFragment selectFragment = new SelectFragment() .addColumns( tableAlias, persister.getIdentifierColumnNames(), persister.getIdentifierColumnNames() ); select.setSelectClause( selectFragment.toFragmentString().substring( 2 ) ); String whereJoinFragment = persister.whereJoinFragment( tableAlias, true, false ); select.setFromClause( rootTableName + ' ' + tableAlias + fromJoinFragment ); select.setWhereClause( whereJoinFragment + userWhereClause );
public AbstractIdsBulkIdHandler( SessionFactoryImplementor sessionFactory, HqlSqlWalker walker) { super(sessionFactory, walker); final AbstractRestrictableStatement statement = (AbstractRestrictableStatement) walker.getAST(); final FromElement fromElement = statement.getFromClause().getFromElement(); this.targetedPersister = fromElement.getQueryable(); final ProcessedWhereClause processedWhereClause = processWhereClause( statement.getWhereClause() ); this.idSelectParameterSpecifications = processedWhereClause.getIdSelectParameterSpecifications(); final String bulkTargetAlias = fromElement.getTableAlias(); this.idSelect = generateIdSelect( bulkTargetAlias, processedWhereClause ).toStatementString(); }
public Select setSelectClause(SelectFragment selectFragment) { setSelectClause( selectFragment.toFragmentString().substring( 2 ) ); return this; }
protected String renderSelect( final int[] tableNumbers, final int[] columnNumbers, final int[] formulaNumbers) { Arrays.sort( tableNumbers ); //get 'em in the right order (not that it really matters) //render the where and from parts int drivingTable = tableNumbers[0]; final String drivingAlias = generateTableAlias( getRootAlias(), drivingTable ); //we *could* regerate this inside each called method! final String where = createWhereByKey( drivingTable, drivingAlias ); final String from = createFrom( drivingTable, drivingAlias ); //now render the joins JoinFragment jf = createJoin( tableNumbers, drivingAlias ); //now render the select clause SelectFragment selectFragment = createSelect( columnNumbers, formulaNumbers ); //now tie it all together Select select = new Select( getFactory().getDialect() ); select.setSelectClause( selectFragment.toFragmentString().substring( 2 ) ); select.setFromClause( from ); select.setWhereClause( where ); select.setOuterJoins( jf.toFromFragmentString(), jf.toWhereFragmentString() ); if ( getFactory().getSessionFactoryOptions().isCommentsEnabled() ) { select.setComment( "sequential select " + getEntityName() ); } return select.toStatementString(); }
protected String generateIdInsertSelect(Queryable persister, String tableAlias, AST whereClause) { Select select = new Select( getFactory().getDialect() ); SelectFragment selectFragment = new SelectFragment() .addColumns( tableAlias, persister.getIdentifierColumnNames(), persister.getIdentifierColumnNames() ); select.setSelectClause( selectFragment.toFragmentString().substring( 2 ) ); String whereJoinFragment = persister.whereJoinFragment( tableAlias, true, false ); select.setFromClause( rootTableName + ' ' + tableAlias + fromJoinFragment ); select.setWhereClause( whereJoinFragment + userWhereClause );
public String toStatementString() { if ( tableName == null ) throw new HibernateException( "no table name defined for insert-select" ); if ( select == null ) throw new HibernateException( "no select defined for insert-select" ); StringBuffer buf = new StringBuffer( (columnNames.size() * 15) + tableName.length() + 10 ); if ( comment!=null ) { buf.append( "/* " ).append( comment ).append( " */ " ); } buf.append( "insert into " ).append( tableName ); if ( !columnNames.isEmpty() ) { buf.append( " (" ); Iterator itr = columnNames.iterator(); while ( itr.hasNext() ) { buf.append( itr.next() ); if ( itr.hasNext() ) { buf.append( ", " ); } } buf.append( ")" ); } buf.append( ' ' ).append( select.toStatementString() ); return buf.toString(); } }
Select select = new Select( getFactory().getDialect() ); select.setComment( "get current state " + getEntityName() ); return select.setSelectClause( selectClause ) .setFromClause( fromClause ) .setOuterJoins( "", "" ) .setWhereClause( whereClause ) .toStatementString();
protected String generateIdInsertSelect(Queryable persister, String tableAlias, AST whereClause) { Select select = new Select( getFactory().getDialect() ); SelectFragment selectFragment = new SelectFragment() .addColumns( tableAlias, persister.getIdentifierColumnNames(), persister.getIdentifierColumnNames() ); select.setSelectClause( selectFragment.toFragmentString().substring( 2 ) ); String whereJoinFragment = persister.whereJoinFragment( tableAlias, true, false ); select.setFromClause( rootTableName + ' ' + tableAlias + fromJoinFragment ); select.setWhereClause( whereJoinFragment + userWhereClause );
public String toStatementString() { if ( tableName == null ) throw new HibernateException( "no table name defined for insert-select" ); if ( select == null ) throw new HibernateException( "no select defined for insert-select" ); StringBuffer buf = new StringBuffer( (columnNames.size() * 15) + tableName.length() + 10 ); if ( comment!=null ) { buf.append( "/* " ).append( comment ).append( " */ " ); } buf.append( "insert into " ).append( tableName ); if ( !columnNames.isEmpty() ) { buf.append( " (" ); Iterator itr = columnNames.iterator(); while ( itr.hasNext() ) { buf.append( itr.next() ); if ( itr.hasNext() ) { buf.append( ", " ); } } buf.append( ")" ); } buf.append( ' ' ).append( select.toStatementString() ); return buf.toString(); } }
private String generateGeneratedValuesSelectString(final GenerationTiming generationTimingToMatch) { Select select = new Select( getFactory().getDialect() ); select.setComment( "get generated state " + getEntityName() ); .toString(); return select.setSelectClause( selectClause ) .setFromClause( fromClause ) .setOuterJoins( "", "" ) .setWhereClause( whereClause ) .toStatementString();
public String toStatementString() { if ( tableName == null ) throw new HibernateException( "no table name defined for insert-select" ); if ( select == null ) throw new HibernateException( "no select defined for insert-select" ); StringBuffer buf = new StringBuffer( (columnNames.size() * 15) + tableName.length() + 10 ); if ( comment!=null ) { buf.append( "/* " ).append( comment ).append( " */ " ); } buf.append( "insert into " ).append( tableName ); if ( !columnNames.isEmpty() ) { buf.append( " (" ); Iterator itr = columnNames.iterator(); while ( itr.hasNext() ) { buf.append( itr.next() ); if ( itr.hasNext() ) { buf.append( ", " ); } } buf.append( ")" ); } buf.append( ' ' ).append( select.toStatementString() ); return buf.toString(); } }
Select select = new Select( getFactory().getDialect() ); if ( getFactory().getSessionFactoryOptions().isCommentsEnabled() ) { select.setComment( "get current natural-id->entity-id state " + getEntityName() ); select.setSelectClause( identifierSelectFragment( rootAlias, "" ) ); select.setFromClause( fromTableFragment( rootAlias ) + fromJoinFragment( rootAlias, true, false ) ); return select.setOuterJoins( "", "" ).setWhereClause( whereClause.toString() ).toStatementString();
public String toStatementString() { if ( tableName == null ) { throw new HibernateException( "no table name defined for insert-select" ); } if ( select == null ) { throw new HibernateException( "no select defined for insert-select" ); } StringBuilder buf = new StringBuilder( (columnNames.size() * 15) + tableName.length() + 10 ); if ( comment!=null ) { buf.append( "/* " ).append( comment ).append( " */ " ); } buf.append( "insert into " ).append( tableName ); if ( !columnNames.isEmpty() ) { buf.append( " (" ); Iterator itr = columnNames.iterator(); while ( itr.hasNext() ) { buf.append( itr.next() ); if ( itr.hasNext() ) { buf.append( ", " ); } } buf.append( ")" ); } buf.append( ' ' ).append( select.toStatementString() ); return buf.toString(); } }