2016-04-07 8 views
5

क्या विदेशी कुंजी बाधाओं के साथ एक तालिका को छंटनी करना संभव है ताकि अन्य तालिकाओं में सभी पंक्तियों को भी हटा दिया जा सके?विदेशी कुंजी बाधाओं के साथ Knex truncate तालिका

मैं knex('tableName').truncate() विधि को पास करने के विकल्प के लिए दस्तावेज़ में नहीं देख सकता।

उत्तर

4

मैं नहीं मिला है एक यह करने के लिए रास्ते में बनाया गया है, तो मैं बस कच्चे मोड में ड्रॉप:

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'); 
    }); 
}; 
:

knex.raw('TRUNCATE TABLE users, products CASCADE') 

आप भी इस के लिए अपने माइग्रेशन में अपने आप ही हो करने के लिए सेट कर सकते हैं

-2

अब Knexjs में truncate() विधि है।

knex('accounts').truncate() 
Outputs: 
truncate `accounts` 

सभी मामलों के लिए काम नहीं कर सकता है, लेकिन बुनियादी छंटनी आवश्यकताओं के लिए ठीक होना चाहिए।

संबंधित मुद्दे