Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

SEQUELIZE (नोडजेएस) में एक ट्रिगर कैसे बनाएं?

आप इसे दो तरीकों में से एक में कर सकते हैं। जैसा कि आपने नोट किया है, आप डेटाबेस में ही एक ट्रिगर बना सकते हैं। इसे पूरा करने के लिए आप एक रॉ सीक्वेलाइज़ क्वेरी चला सकते हैं:

sequelize.query('CREATE TRIGGER create_config AFTER INSERT ON users' +
  ' FOR EACH ROW' +
  ' BEGIN' +
  ' insert into configs (UserId) values(new.id);' +
  'END;')

या, आप एक हुक बना सकते हैं उपयोगकर्ता मॉडल पर जो afterCreate . पर एक क्रिया करता है घटना:

module.exports = function(sequelize, DataTypes) {    
  var User = sequelize.define('User', {
    name        : DataTypes.STRING(255),
    email       : DataTypes.STRING(255),
    username    : DataTypes.STRING(45),
    password    : DataTypes.STRING(100),
  }, {
    classMethods : {
      associate : function(models) {
        User.hasOne(models.Config)
      }
    },
    hooks: {
      afterCreate: function(user, options) {
        models.Config.create({
          UserId: user.id
        })
      }
    }
  });
  return User;
};


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. WHERE क्लॉज के लिए SQL में दो कॉलमों को मिलाएं

  2. RODBC sqlSave के साथ कोई समस्या

  3. MySQL त्रुटि:'उपयोगकर्ता' रूट '@' लोकलहोस्ट 'के लिए प्रवेश निषेध

  4. आरक्षण प्रणाली के लिए अगली उपलब्ध तिथि खोजने के लिए SQL क्वेरी में सहायता करें

  5. पिछले महीने से सभी पंक्तियों को पुनः प्राप्त करें (लारवेल + वाक्पटु)