我正在重写一个项目来使用Node.js. 我想继续使用MySQL作为数据库(尽管我不介意重写架构)。 我正在寻找一种简单易用,性能合理的ORM,它支持缓存,多对一和多对多关系。 从我可以找到的MySQL ORM中, persistencejs和sequelize似乎是最成熟的。 你有经验吗? 在我的决定中我应该注意哪些相关的利弊?
#1楼
我可以建议Node ORM吗?
https://github.com/dresende/node-orm2
有关自述文件的文档,支持MySQL,PostgreSQL和SQLite。
MongoDB自2.1.x版(2013年7月发布)开始提供
更新:根据项目的自述文件,不再维护此包。 它改为推荐书架和续集
#2楼
我会选择Sequelize因为它的优秀文档。 这只是一个诚实的意见(我从来没有真正使用MySQL与Node那么多)。
#3楼
首先,请注意我没有使用其中任何一个(但已使用Node.js)。
两个库都记录得很好,并且具有稳定的API。 但是,persistence.js似乎在更多项目中使用 。 但我不知道他们是否仍然使用它。
sequelize的开发者有时会在blog.depold.com上发表关于它的博客。 当您想使用主键作为外键时,您将需要此博客文章中描述的补丁。 如果您需要persistence.js的帮助,那么有一个专门讨论它的谷歌小组。
从我收集的例子来看,sequelize比persistance.js更像JavaScript(更多糖),但支持更少的数据存储(只有MySQL,而persistance.js甚至可以使用浏览器内存储)。
我认为sequelize可能是你的方式,因为你只需要MySQL支持。 但是,如果您需要一些方便的功能(例如搜索)或者希望以后使用其他数据库,则需要使用persistence.js。
#4楼
Sequelize和Persistence.js之间的一个主要区别是前者支持STRING
数据类型,即VARCHAR(255)
。 我觉得制作一切TEXT
真的很不舒服。
来源:oschina
链接:https://my.oschina.net/u/3797416/blog/3198281