Obtenir le dernier ID inséré Sequelize
Je suis en utilisant Sequelize et je suis en train de récupérer le dernier ID inséré dans raw requête.
Ma requête est
.query(Sequelize.Utils.format(["insert into MyTable (field1, field2) values (?,?)", val1, val2])
La requête est fait à la perfection, mais le résultat sur le succès de l'événement est null.
Quelqu'un peut-il aider?
Grâce.
Les gars,
après quelques recherches et des zillions de tentatives, j'ai compris comment le destinataire de l'appel objet des travaux dans sequelizeJs.
s'il vous plaît, corrigez-moi si ma réponse est fausse.
le destinataire de l'appel objet des besoins de cette structure
{__factory:{autoIncrementField: 'parameterName'}, parameterName: '' }
dans ce cas "parameterName" est le champ qui va stocker la nouvelle ID, sequelize recherche __usine.autoIncrementField pour définir la valeur du dernier id inséré dans la propriété avec sa valeur (valeur de __usine.autoIncrementField).
donc, mon appel à des requêtes sur la méthode
.query(sequelize.Utils.format(tempInsert), {__factory:{autoIncrementField: 'parameterName'}, parameterName: '' }, {raw: true})
cette volonté résultat dans l'objet comme ça
{ __factory: { autoIncrementField: 'parameterName' }, parameterName: newInserted_ID }
merci pour tout, et j'espère que cela peut aider quelqu'un.
source d'informationauteur ops.rio
Vous devez vous connecter pour publier un commentaire.
Oui, votre réponse est de travailler. Une autre façon serait
Vous devez ajouter autoIncrement propriété dans la définition du modèle.
Ensuite, vous pouvez accéder dernier id inséré à la propriété dans la définition du modèle.