Browse Source

DEC-19577 fix: 另一个实现类也改一下

feature/10.0
lidongy 3 years ago
parent
commit
2d2af235bd
  1. 19
      fine-hibernate/src/main/java/com/fr/third/org/hibernate/tool/schema/internal/IndividuallySchemaMigratorImpl.java

19
fine-hibernate/src/main/java/com/fr/third/org/hibernate/tool/schema/internal/IndividuallySchemaMigratorImpl.java

@ -63,26 +63,28 @@ public class IndividuallySchemaMigratorImpl extends AbstractSchemaMigrator {
namespace, namespace,
targets targets
); );
boolean tableValid = true;
for ( Table table : namespace.getTables() ) { for ( Table table : namespace.getTables() ) {
if ( schemaFilter.includeTable( table ) && table.isPhysicalTable() ) { if ( schemaFilter.includeTable( table ) && table.isPhysicalTable() ) {
checkExportIdentifier( table, exportIdentifiers ); checkExportIdentifier( table, exportIdentifiers );
final TableInformation tableInformation = existingDatabase.getTableInformation( table.getQualifiedTableName() ); final TableInformation tableInformation = existingDatabase.getTableInformation( table.getQualifiedTableName() );
if ( tableInformation == null ) { if ( tableInformation == null ) {
createTable( table, dialect, metadata, formatter, options, targets ); tableValid &= createTable( table, dialect, metadata, formatter, options, targets );
} }
else if ( tableInformation != null && tableInformation.isPhysicalTable() ) { else if ( tableInformation != null && tableInformation.isPhysicalTable() ) {
tablesInformation.addTableInformation( tableInformation ); tablesInformation.addTableInformation( tableInformation );
migrateTable( table, tableInformation, dialect, metadata, formatter, options, targets ); tableValid &= migrateTable( table, tableInformation, dialect, metadata, formatter, options, targets );
} }
} }
} }
for ( Table table : namespace.getTables() ) { if (tableValid) {
if ( schemaFilter.includeTable( table ) && table.isPhysicalTable() ) { for (Table table : namespace.getTables()) {
final TableInformation tableInformation = tablesInformation.getTableInformation( table ); if (schemaFilter.includeTable(table) && table.isPhysicalTable()) {
if ( tableInformation == null || ( tableInformation != null && tableInformation.isPhysicalTable() ) ) { final TableInformation tableInformation = tablesInformation.getTableInformation(table);
applyIndexes( table, tableInformation, dialect, metadata, formatter, options, targets ); if (tableInformation == null || (tableInformation != null && tableInformation.isPhysicalTable())) {
applyUniqueKeys( table, tableInformation, dialect, metadata, formatter, options, targets ); applyIndexes(table, tableInformation, dialect, metadata, formatter, options, targets);
applyUniqueKeys(table, tableInformation, dialect, metadata, formatter, options, targets);
if (tableInformation != null) { if (tableInformation != null) {
applyPrimaryKey(table, tableInformation, dialect, metadata, formatter, options, targets); applyPrimaryKey(table, tableInformation, dialect, metadata, formatter, options, targets);
} }
@ -90,6 +92,7 @@ public class IndividuallySchemaMigratorImpl extends AbstractSchemaMigrator {
} }
} }
} }
}
return tablesInformation; return tablesInformation;
} }
} }

Loading…
Cancel
Save