Answers:
MySQL是关系数据库的一个示例-您将使用ORM在代码中的对象与数据的关系表示之间进行转换。
奥姆斯的例子是NHibernate的,实体框架,小巧玲珑更多...
MongoDB是文档数据库的示例-您将使用ODM在代码中的对象与数据的文档表示形式之间进行转换(如果需要)。
Mandango是MongoDB ODM的一个示例。
本质上,ORM使用SQL数据库驱动程序(如ODBC,JDBC或OLEDB)将对象表示法转换为关系表示法,而ODM使用JSON或JSONB api将对象表示法转换为文档表示法。
引擎盖下有不同类型的实现。
PS:JSONB是一种MongoDB使用的以二进制格式存储的JSON文本文档符号。
当您首次学习如何使用数据库时,所有这些都归结为两种数据库设置类型,即ORM(对象关系映射)和ODM(对象文档映射)。
ORM用来映射具有关系世界的对象,它基本上在面向对象的编程语言中在不兼容类型之间转换数据。ORM将存储驱动程序的实现特定细节包装在API(应用程序接口)中,并将关系字段映射到对象成员。例如,如果我有一个雇员表,它会通过各种方法映射到所有雇员的单个对象。
另一方面,ODM是对象文档映射器,它使用文档数据库(如MongoDB)映射对象。
主要区别在于ORM用于MySQL数据库,而ODM则用于数据文档表示的映射。记住ORM的最佳方法是将其视为具有行和列的Excel电子表格。使用此设置时,您要确保对如何处理当前应用程序有一个很好的计划,它不允许像ODM那样进行许多修改。使用ODM,我们可以轻松地添加新的字段和属性,但是使用ORM时,添加新字段时,您需要记住,没有什么是空的,因此除非您想进入每个字段并进行修改,否则它都需要一个默认值。
Mongoose是用于MongoDB的ODM(对象数据模型)的一个很好的例子,在其中您可以直接对对象执行操作,然后将其转换为适当的查询和模式。可以在这里https://mongoosejs.com/找到