misc: knex update for mssql constraint bug
This commit is contained in:
@@ -1,27 +1,6 @@
|
||||
/* global WIKI */
|
||||
|
||||
exports.up = async knex => {
|
||||
await knex('authentication').where('isEnabled', false).del()
|
||||
|
||||
// -> Knex bug #3855 workaround
|
||||
// -> https://github.com/knex/knex/pull/3855
|
||||
if (WIKI.config.db.type === 'mssql') {
|
||||
await knex.schema.raw(`
|
||||
DECLARE @constraint varchar(100) = (SELECT default_constraints.name
|
||||
FROM sys.all_columns
|
||||
INNER JOIN sys.tables
|
||||
ON all_columns.object_id = tables.object_id
|
||||
INNER JOIN sys.schemas
|
||||
ON tables.schema_id = schemas.schema_id
|
||||
INNER JOIN sys.default_constraints
|
||||
ON all_columns.default_object_id = default_constraints.object_id
|
||||
WHERE schemas.name = 'dbo'
|
||||
AND tables.name = 'authentication'
|
||||
AND all_columns.name = 'isEnabled')
|
||||
|
||||
IF @constraint IS NOT NULL EXEC('ALTER TABLE authentication DROP CONSTRAINT ' + @constraint)`)
|
||||
}
|
||||
|
||||
await knex.schema
|
||||
.alterTable('authentication', table => {
|
||||
table.dropColumn('isEnabled')
|
||||
|
Reference in New Issue
Block a user