Kou*_*sha 5 javascript mysql truncate knex.js
是否可以强制截断具有外键约束的表,以便还删除其他表中的所有行?
我在文档中看不到传递给knex('tableName').truncate()方法的选项.
我没有找到内置的方法来做到这一点,所以我只是进入原始模式:
knex.raw('TRUNCATE TABLE users, products CASCADE')
Run Code Online (Sandbox Code Playgroud)
您还可以将其设置为在迁移中自动进行:
exports.up = function(knex) {
return knex.schema.createTable('users_products', (t) => {
t.uuid('id').primary().defaultTo(knex.raw('uuid_generate_v4()'));
t.uuid('user_id').notNullable().references('id').inTable('users').onDelete('CASCADE');
t.uuid('product_id').notNullable().references('id').inTable('products').onDelete('CASCADE');
});
};
Run Code Online (Sandbox Code Playgroud)