首页 > 解决方案 > 如何使用 NodeJS 将复合对象插入 SQL 表?

问题描述

我正在学习 Node,并且在使用 Hibernate ORM 之前使用过 Spring Boot,这使我能够映射对象,例如

{ 
 name:"John", 
 salary:50000, 
 address:{ 
  city: "Houston",
  state: "Texas"
 } 
}

到 2 个单独的表中,例如 Employee 和 Address 并将其插入。我想知道如何在 NodeJS 中完成它以及映射此类数据的最佳实践是什么。

标签: javascriptsqlnode.jsexpress

解决方案


如果你想在 NodeJS 上保持 Hibernate ORM 的习惯,你可以使用bookshelfjssequelize。您必须自己针对您共享的 json 进行插入过程。

var data = { 
 name:"John", 
 salary:50000, 
 address:{ 
  city: "Houston",
  state: "Texas"
 } 
};

connection.query('INSERT INTO Employee (NAME, SALARY) VALUES(?,?)', [data.name, data.salary], function (err, result, fields) {
    if (err) throw err;

    var lastInsertID = result.insertId;
    connection.query('INSERT INTO ADDRESS (CUSTOMER_ID, CITY, STATE) VALUES(?,?,?)', [lastInsertID, data.address.name, data.address.state], function (err, result, fields) {
        if (err) throw err;

    });
});


推荐阅读