Print out GO statement for SQL Server in generated SQL not after every statement
Description
The LoggingExecutor prints out a GO statement after each SQL statement, i.e. each batch contains only a single statement. While this is in theory good, it imho doesn't make sense to have the insert into DATABASECHANGELOG in a separate batch as well, because if an SQL statement fails the databasechangelog is nevertheless populated with an EXECUTED entry for the changeset that actually failed. So my proposal is to just print out a GO statement after statements that insert or update DATABASECHANGELOG or DATABASECHANGELOGLOCK tables.
The LoggingExecutor prints out a GO statement after each SQL statement, i.e. each batch contains only a single statement. While this is in theory good, it imho doesn't make sense to have the insert into DATABASECHANGELOG in a separate batch as well, because if an SQL statement fails the databasechangelog is nevertheless populated with an EXECUTED entry for the changeset that actually failed.
So my proposal is to just print out a GO statement after statements that insert or update DATABASECHANGELOG or DATABASECHANGELOGLOCK tables.