发布于 2015-01-09 09:50:44 | 331 次阅读 | 评论: 0 | 来源: 网友投递
Sequelize Node.js的ORM 框架
Sequelize.js 提供对 MySQL,MariaDB,SQLite 和 PostgreSQL 数据库的简单访问,通过映射数据库条目到对象,或者对象到数据库条目。简而言之,就是 ORM(Object-Relational-Mapper)。Sequelize.js 完全是使用 JavaScript 编写,适用于 Node.js 的环境。
Sequelize.js 提供对 MySQL,MariaDB,SQLite 和 PostgreSQL 数据库的简单访问,通过映射数据库条目到对象,或者对象到数据库条目。简而言之,就是 ORM(Object-Relational-Mapper)。Sequelize.js 完全是使用 JavaScript 编写,适用于 Node.js 的环境。
Sequelize 2.0.0RC7 发布,此版本现已提供下载:Sequelize 3.0.0.RC7.zip,主要更新内容如下:
[FEATURE] Throw an error if no where clause is given to Model.destroy().
[BUG] Fixed issue with order: sequelize.literal('string')
[FEATURE] add clone: true support to .get(). Is needed when using delete on values from a .get() (toJSON(), this.values). (.get() is just a reference to the values for performance reasons when there's no custom getters or includes)
[FEATURE] add sequelize.escape(value) convenience method
[BUG] Fixes crash with findAll({include: [Model], order: sequelize.literal()})
[FEATURE] Now possible to pass createdAt and updatedAt values to Model.create/Model.bulkCreate when using silent: true (when importing datasets with existing timestamps)
[FEATURE] instance.update() using default fields will now automatically also save and validate values provided via beforeUpdate hooks
[BUG] Fixed bad SQL when updating a JSON attribute with a different field
[BUG] Fixed issue with creating and updating values of a DataTypes.ARRAY(DataTypes.JSON) attribute
[BUG] Model.bulkCreate([{}], {returning: true}) will now correctly result in instances with primary key values.
[BUG] instance.save() with fields: [] (as a result of .changed() being []) will no result in a noop instead of an empty update query.
[BUG] Fixed case where findOrCreate could return [null, true] when given a defaults value that triggered a unique constraint error.
instance.update() using default fields will now automatically also save and validate values provided via beforeUpdate hooks
Sequelize no longer supports case insensitive mysql enums
更多内容请看更新日志。