Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да създадете TRIGGER в SEQUELIZE (nodeJS)?

Можете да направите това по един от двата начина. Както отбелязахте, можете да създадете тригер в самата база данни. Можете да изпълните необработена заявка за секвелиране, за да постигнете това:

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. API на Google Maps v3:Как да настроите нивото на мащабиране и центъра на картата към местоположение, предоставено от потребителя?

  2. Как да напиша заявка за присъединяване към MySQL

  3. Използване на OR в LIKE Query в MySQL за сравнение на множество полета

  4. Проверка за празно поле с MySQL

  5. как да получите размер на таблицата на mysql в GB