Очистка прохода не выполняется из-за ограничения падения - PullRequest
2 голосов
/ 23 апреля 2019

Я пытаюсь clean моей базы данных MSSQL.У меня это работает на некоторых из моих баз данных, но на одной из них я получаю следующую ошибку.

Unable to clean schema [dbo]
----------------------------
SQL State  : S0001
Error Code : 3717
Message    : Cannot drop a default constraint by DROP DEFAULT statement. Use ALTER TABLE to drop a constraint default.

        at org.flywaydb.core.internal.database.base.Schema.clean(Schema.java:151)
        at org.flywaydb.core.internal.command.DbClean$3.call(DbClean.java:172)
        at org.flywaydb.core.internal.command.DbClean$3.call(DbClean.java:169)
        at org.flywaydb.core.internal.jdbc.TransactionTemplate.execute(TransactionTemplate.java:74)
        at org.flywaydb.core.internal.command.DbClean.cleanSchema(DbClean.java:169)
        at org.flywaydb.core.internal.command.DbClean.clean(DbClean.java:113)
        at org.flywaydb.core.Flyway.doClean(Flyway.java:1488)
        at org.flywaydb.core.Flyway.access$300(Flyway.java:85)
        at org.flywaydb.core.Flyway$3.execute(Flyway.java:1506)
        at org.flywaydb.core.Flyway$3.execute(Flyway.java:1499)
        at org.flywaydb.core.Flyway.execute(Flyway.java:1711)
        at org.flywaydb.core.Flyway.clean(Flyway.java:1499)
        at org.flywaydb.commandline.Main.executeOperation(Main.java:157)
        at org.flywaydb.commandline.Main.main(Main.java:108)
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: Cannot drop a default constraint by DROP DEFAULT statement. Use ALTER TABLE to drop a con
straint default.
        at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:254)
        at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1608)
        at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:578)
        at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:508)
        at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7240)
        at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2869)
        at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:243)
        at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:218)
        at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.execute(SQLServerPreparedStatement.java:493)
        at org.flywaydb.core.internal.jdbc.JdbcTemplate.execute(JdbcTemplate.java:215)
        at org.flywaydb.core.internal.database.sqlserver.SQLServerSchema.doClean(SQLServerSchema.java:294)
        at org.flywaydb.core.internal.database.base.Schema.clean(Schema.java:149)
        ... 13 more

Многие из моих таблиц имеют ограничения по умолчанию для определенных столбцов.Но я не могу понять, как я могу изменить то, как пролетные пути преодолевают эти ограничения.Я не могу найти информацию о том, как обойти эту проблему.Если у вас есть понимание, пожалуйста, помогите.Спасибо!

1 Ответ

0 голосов
/ 24 апреля 2019

Пожалуйста, зарегистрируйте проблему в системе отслеживания проблем с точными инструкциями по воспроизведению, включая наименьший возможный файл SQL, который вызывает это.

...