public String sqlCreateString(Dialect dialect, Mapping mapping, String defaultCatalog, String defaultSchema) throws HibernateException { return buildSqlCreateIndexString( dialect, getQuotedName( dialect ), getTable(), getColumnIterator(), columnOrderMap, false, defaultCatalog, defaultSchema ); }
@Override public String getExportIdentifier() { return StringHelper.qualify( getTable().getExportIdentifier(), "IDX-" + getName() ); } }
final JdbcEnvironment jdbcEnvironment = metadata.getDatabase().getJdbcEnvironment(); final String tableName = jdbcEnvironment.getQualifiedObjectNameFormatter().format( index.getTable().getQualifiedTableName(), dialect ); indexNameForCreation = jdbcEnvironment.getQualifiedObjectNameFormatter().format( new QualifiedNameImpl( index.getTable().getQualifiedTableName().getCatalogName(), index.getTable().getQualifiedTableName().getSchemaName(), jdbcEnvironment.getIdentifierHelper().toIdentifier( index.getQuotedName( dialect ) ) ),
final JdbcEnvironment jdbcEnvironment = metadata.getDatabase().getJdbcEnvironment(); final String tableName = jdbcEnvironment.getQualifiedObjectNameFormatter().format( index.getTable().getQualifiedTableName(), jdbcEnvironment.getDialect() ); indexNameForCreation = jdbcEnvironment.getQualifiedObjectNameFormatter().format( new QualifiedNameImpl( index.getTable().getQualifiedTableName().getCatalogName(), index.getTable().getQualifiedTableName().getSchemaName(), jdbcEnvironment.getIdentifierHelper().toIdentifier( index.getName() ) ),
@Override public String[] getSqlDropStrings(Index index, Metadata metadata) { if ( !dialect.dropConstraints() ) { return NO_COMMANDS; } final JdbcEnvironment jdbcEnvironment = metadata.getDatabase().getJdbcEnvironment(); final String tableName = jdbcEnvironment.getQualifiedObjectNameFormatter().format( index.getTable().getQualifiedTableName(), dialect ); final String indexNameForCreation; if ( dialect.qualifyIndexName() ) { indexNameForCreation = StringHelper.qualify( tableName, index.getName() ); } else { indexNameForCreation = index.getName(); } return new String[] { "drop index " + indexNameForCreation }; } }
@Test public void testSecondaryTableIndex(){ PersistentClass entity = metadata().getEntityBinding( Car.class.getName() ); Join join = (Join)entity.getJoinIterator().next(); Iterator<Index> itr = join.getTable().getIndexIterator(); assertTrue( itr.hasNext() ); Index index = itr.next(); assertFalse( itr.hasNext() ); assertTrue( "index name is not generated", StringHelper.isNotEmpty( index.getName() ) ); assertEquals( 2, index.getColumnSpan() ); Iterator<Column> columnIterator = index.getColumnIterator(); Column column = columnIterator.next(); assertEquals( "dealer_name", column.getName() ); column = columnIterator.next(); assertEquals( "rate", column.getName() ); assertSame( join.getTable(), index.getTable() ); }
@Test public void testCollectionTableIndex(){ PersistentClass entity = metadata().getEntityBinding( Car.class.getName() ); Property property = entity.getProperty( "otherDealers" ); Set set = (Set)property.getValue(); Table collectionTable = set.getCollectionTable(); Iterator<Index> itr = collectionTable.getIndexIterator(); assertTrue( itr.hasNext() ); Index index = itr.next(); assertFalse( itr.hasNext() ); assertTrue( "index name is not generated", StringHelper.isNotEmpty( index.getName() ) ); assertEquals( 1, index.getColumnSpan() ); Iterator<Column> columnIterator = index.getColumnIterator(); Column column = columnIterator.next(); assertEquals( "name", column.getName() ); assertSame( collectionTable, index.getTable() ); }
@Test public void testJoinTableIndex(){ PersistentClass entity = metadata().getEntityBinding( Importer.class.getName() ); Property property = entity.getProperty( "cars" ); Bag set = (Bag)property.getValue(); Table collectionTable = set.getCollectionTable(); Iterator<Index> itr = collectionTable.getIndexIterator(); assertTrue( itr.hasNext() ); Index index = itr.next(); assertFalse( itr.hasNext() ); assertTrue( "index name is not generated", StringHelper.isNotEmpty( index.getName() ) ); assertEquals( 1, index.getColumnSpan() ); Iterator<Column> columnIterator = index.getColumnIterator(); Column column = columnIterator.next(); assertEquals( "importers_id", column.getName() ); assertSame( collectionTable, index.getTable() ); }
@Test public void testTableIndex() { PersistentClass entity = metadata().getEntityBinding( Car.class.getName() ); Iterator itr = entity.getTable().getUniqueKeyIterator(); assertTrue( itr.hasNext() ); UniqueKey uk = (UniqueKey) itr.next(); assertFalse( itr.hasNext() ); assertTrue( StringHelper.isNotEmpty( uk.getName() ) ); assertEquals( 2, uk.getColumnSpan() ); Column column = (Column) uk.getColumns().get( 0 ); assertEquals( "brand", column.getName() ); column = (Column) uk.getColumns().get( 1 ); assertEquals( "producer", column.getName() ); assertSame( entity.getTable(), uk.getTable() ); itr = entity.getTable().getIndexIterator(); assertTrue( itr.hasNext() ); Index index = (Index)itr.next(); assertFalse( itr.hasNext() ); assertEquals( "Car_idx", index.getName() ); assertEquals( 1, index.getColumnSpan() ); column = index.getColumnIterator().next(); assertEquals( "since", column.getName() ); assertSame( entity.getTable(), index.getTable() ); }
Table table = index.getTable(); Iterator<Column> columns = index.getColumnIterator(); java.util.Map<Column, String> columnOrderMap = new HashMap<Column, String>();
public String sqlCreateString(Dialect dialect, Mapping mapping, String defaultCatalog, String defaultSchema) throws HibernateException { return buildSqlCreateIndexString( dialect, getName(), getTable(), getColumnIterator(), false, defaultCatalog, defaultSchema ); }
public String sqlCreateString(Dialect dialect, Mapping mapping, String defaultCatalog, String defaultSchema) throws HibernateException { return buildSqlCreateIndexString( dialect, getName(), getTable(), getColumnIterator(), false, defaultCatalog, defaultSchema ); }
public String sqlCreateString(Dialect dialect, Mapping mapping, String defaultCatalog, String defaultSchema) throws HibernateException { return buildSqlCreateIndexString( dialect, getName(), getTable(), getColumnIterator(), false, defaultCatalog, defaultSchema ); }
public String sqlCreateString(Dialect dialect, Mapping mapping, String defaultCatalog, String defaultSchema) throws HibernateException { return buildSqlCreateIndexString(dialect, getName(), getTable(), getColumnIterator(), false, defaultCatalog, defaultSchema); }
/** * Constructor used for {@link Index}es. */ public MongoDBIndexSpec(Index index, Document options) { this.indexType = determineIndexType( options ); this.options = prepareOptions( this.indexType, options, index.getName(), false ); this.collection = index.getTable().getName(); this.indexName = index.getName(); // TODO OGM-1080: the columnOrderMap is not accessible for an Index this.addIndexKeys( index.getColumnIterator(), Collections.<Column, String>emptyMap() ); }
/** * Constructor used for {@link Index}es. */ public MongoDBIndexSpec(Index index, Document options) { this.indexType = determineIndexType( options ); this.options = prepareOptions( this.indexType, options, index.getName(), false ); this.collection = index.getTable().getName(); this.indexName = index.getName(); // TODO OGM-1080: the columnOrderMap is not accessible for an Index this.addIndexKeys( index.getColumnIterator(), Collections.<Column, String>emptyMap() ); }
JdbcUtil.toIdentifier(this, index.getName())); Assert.assertEquals(2, index.getColumnSpan() ); Assert.assertSame(index.getTable(), table); Iterator<Column> cols = index.getColumnIterator(); Column col1 = cols.next();