Javascript 如何在使用knex.js删除约束之前检查约束是否存在

Javascript 如何在使用knex.js删除约束之前检查约束是否存在,javascript,knex.js,Javascript,Knex.js,因此,我想使用Knex.js删除一个约束,但在执行此操作之前,我需要检查约束是否存在。我还没找到办法。有人有主意吗 以下是我的功能: async alterTable_dropConstraint(tableName, constraintDropped) { return await knex.schema.raw(`ALTER TABLE ${tableName} DROP CONSTRAINT ${constraintDropped}`); } 回答(或对我有用的代码): 添加

因此,我想使用Knex.js删除一个约束,但在执行此操作之前,我需要检查约束是否存在。我还没找到办法。有人有主意吗

以下是我的功能:

async alterTable_dropConstraint(tableName, constraintDropped) {
    return await knex.schema.raw(`ALTER TABLE ${tableName} DROP CONSTRAINT ${constraintDropped}`);
}

回答(或对我有用的代码): 添加“如果存在”

async alterTable_dropConstraint(tableName, constraintDropped) {
    return await knex.schema.raw(`ALTER TABLE ${tableName} DROP CONSTRAINT IF EXISTS ${constraintDropped}`);
}

这有用吗?阅读该链接后,我尝试添加:chec:knex.schema.raw(
从${tableName}中选择1,其中CONSTRAINT_TYPE='UNIQUE'和CONSTRAINT=${constraintDropped}
),但这没有帮助。它在不可用时找到它。这有帮助吗?阅读该链接后,我尝试添加:chec:knex.schema.raw(
从${tableName}中选择1,其中CONSTRAINT_TYPE='UNIQUE'和CONSTRAINT=${constraintDropped}
),但这没有帮助。当它不可用时,它会找到它。