2017-01-19 8 views
0

// таблица main_lookupкак вставить все значения из другой таблицы с помощью sequalize

const main_lookup=DB.connection.define('main_lookup',{ 

main_lookup_name: { 
    type :Sequelize.STRING, 
    primaryKey: true, 
    allowNull: false 
}, 

value:{ 
type:Sequelize.JSON, 
allowNull:false, 
} 

}); 

// 2

const school_lookup= DB.connection.define('school_lookup',{ 


school_id : { 
    type :Sequelize.STRING, 
    allowNull: false, 
    references: {    
     model: schools, 
     key: 'school_id' 
    } 
}, 
lookup_name: { 
    type :Sequelize.STRING, 
    unique: true, 
    allowNull: false 
}, 
value: { 
type: Sequelize.JSON, 
allowNull: false, 
} 


}); 

мне нужно отправить данные из таблицы main_lookup в школу подстановки данные таблицы

school_id // that is given by me 
lookup_name // that is copy from main_lookup 
value // that is copy from main_look_up 

пример основной поиск // таблица1

main_lookup_name value 
---------------- ----- 
language   ['english','tamil'] 
subject   ['social','maths'] 

раствор похож на содержание после этого

school_lookup // table2 //needed 

school_id lookup value 
--------- ------ ----- 
cit  language ['english','tamil'] 
cit  subject ['social','maths'] 

мне нужна помощь в sequelize с простыми способами

ответ

0

Я думаю, что вы используете sequelize как то, как люди используют Microsoft Excel или Microsoft Access. Вы можете просто сделать отношение в продолжении. здесь код

// Школа-модель

const School=Sequelize.define('school',{ 

     name: { 
      type :Sequelize.STRING, 
      allowNull: false 
     } 
    }); 

// Заголовок

const Subject= Sequelize.define('subject',{ 

     type: { 
      type :Sequelize.STRING, 
      unique: true, 
      allowNull: false 
     }, 
     value: { 
      type: Sequelize.ARRAY, 
      allowNull: false, 
     } 
    }); 

// База данных

const School = require('./path_to_schoolmodel'); 
    const Subject = require('./path_to_subjectmodel'); 

    Subject.belongsTo(School); 
    School.hasMany(Subject); 

Школа модель

id name 
    -- --------------------- 
    1 'fullstack academy' 
    2 'app academy' 

    Subject model 
    id type  value    schoolID 
    -- --------- -------------------- ------------------ 
    1 language ['english','tamil'] 2 
    2 subject ['social','maths'] 1 

Если вы установили отношения модели, вы сможете увидеть ваши данные следующим образом.

Затем, когда вы используете запрос Sequelize на стороне сервера.

const School = require('./path_to_schoolmodel'); 
    const Subject = require('./path_to_subjectmodel'); 
    School.findAll({ 
     include:[ Subject ] 
     }) 
     .then(console.log) 
     .catch(console.error) 

ваш console.log должен возвращать что-то вроде

[ 
     { 
      id: 1, 
      name: 'fullstack academy' 
      subjects: [{ 
       id: 2, 
       type: 'subject', 
       value: [ 
        'socials', 'maths' 
       ] 
      }] 
     }, 
     { 
      id: 2, 
      name: 'app academy' 
      subjects: [{ 
       id: 1, 
       type: 'language', 
       value: [ 
        'english', 'tamil' 
       ] 
      }] 
     }, 
    ] 
+0

спасибо за ваш ответ. но мне нужно перенести данные одной таблицы в другую таблицу. Вы дали операцию выбора запроса –

+0

Мне нужно что-то вроде INSERT INTO TABLE2 (COL1, COL2, COL3) SELECT COL1, COL4, COL7 FROM TABLE1 в последовательности –

 Смежные вопросы

  • Нет связанных вопросов^_^