@ Override protected String makeAlterTableSqlString ( String schema , String tableName , LinkedHashMap < String , JdbcTypeInfo > columnDiff ) { String tableSchema = ( schema == null ) ? getDefaultSchema ( ) : schema ; StringBuilder sqlString = new StringBuilder ( ) ; boolean first = true ; for ( Map . Entry < String , JdbcTypeInfo > entry : columnDiff . entrySet ( ) ) { if ( first ) { first = false ; } else { sqlString . append ( "\n" ) ; } sqlString . append ( ALTER_TABLE ) . append ( " " ) ; if ( tableSchema != null ) { sqlString . append ( tableSchema ) ; sqlString . append ( "." ) ; } sqlString . append ( tableName ) . append ( " " ) . append ( "ADD COLUMN" ) . append ( " " ) . append ( entry . getKey ( ) ) . append ( " " ) . append ( entry . getValue ( ) . toString ( ) ) . append ( ";" ) ; } return sqlString . toString ( ) ; }
H2 wants an ALTER TABLE command per column