【问题标题】:Is it necessary to define schema in order to insert data when using ORM使用ORM时是否需要定义模式才能插入数据
【发布时间】:2018-09-28 10:20:04
【问题描述】:

我正在尝试使用ORM 将来自Node JS 的数据插入MySQL 数据库中。

我查看了Sequelize APICaminte API,我看到的是他们首先创建表,然后在数据库中插入数据。

但我已经创建了数据库和其中的所有表,我只想插入数据而不创建表或数据库。

我之所以选择ORM,是为了避免关注raw insert queries

var sql = "INSERT INTO customers (name, address) VALUES ('公司 Inc', '37 号公路')";

以下是Caminte API 文档中定义的示例示例,Sequelize 也提供了类似类型的文档。

我正在寻找一种在DB 中插入数据而不从ORM 创建任何表的方法

var User = schema.define('User', {
    name:       { type: schema.String,  limit: 255 },
    bio:        { type: schema.Text },
    email:      { type: schema.String,  limit: 155, unique: true },
    approved:   { type: schema.Boolean, default: false, index: true }
    joinedAt:   { type: schema.Date,    default: Date.now },
    age:        { type: schema.Number },
    gender:     { type: schema.String,  limit: 10 }
});

//保存数据

user.isValid(function (valid) {
    if (!valid) {
        return console.log(user.errors);
    }
    user.save(function(err){
        if (!err) {
            return console.log(err);
        }
        console.log('User created');
    });
})

【问题讨论】:

    标签: mysql node.js express orm sequelize.js


    【解决方案1】:

    对于 Sequelize,只要您不synchronize,Sequelize 就不会触及 DB 架构。没有创建表(或更糟:删除)等...您可以使用已经存在的数据库即插即用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-07-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-19
      • 1970-01-01
      • 2013-01-16
      相关资源
      最近更新 更多