J'ai cherché dans la documentation et essayé Google, mais je n'ai pas trouvé de réponse directe à la question:
Comment puis-je appeler une procédure stockée dans Sequelize?
J'ai cherché dans la documentation de Sequelize mais je n'ai même pas trouvé de trace de la "procédure" Word en cela.
Le plus proche que j'ai obtenu était cette demande de rapport de bogue transformé en fonctionnalité: https://github.com/sequelize/sequelize/issues/959
Citant le lien:
Ce que j'imagine serait génial:
sequelize.query('CALL calculateFees();').success(
function (settingName1, settingName2, settingName3, users) {
});
Ils mentionnent qu'il est possible d'appeler des procédures stockées, mais la syntaxe n'est pas fournie.
Quelqu'un peut-il me donner un exemple avec la syntaxe appropriée?
Merci.
Remplacez success
par spread
et vous êtes prêt à partir. Notez que cela ne fonctionnera que sur sequlize 2.0
sequelize
.query('CALL login (:email, :pwd, :device)',
{replacements: { email: "[email protected]", pwd: 'pwd', device: 'Android', }})
.then(v=>console.log(v));
les requêtes séquentielles renvoient des promesses, voici donc comment interroger les procédures stockées.
sequelize.query('CALL calculateFees();').then(function(response){
res.json(response);
}).error(function(err){
res.json(err);
});
J'ai exécuté la procédure stockée avec le mot clé EXEC.
sequelize
.query('EXEC getData :@param1', { replacements: { @param1: 'Test'}, type:sequelize.QueryTypes.SELECT })
.then(data => /*Do something with the data*/)
.catch(error => /*Do something with the error*/)