发布于 2015-01-09 09:50:44 | 329 次阅读 | 评论: 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
更多内容请看更新日志。