在sqlalchemy中选择ORM和核心时,业务对象是什么?

在sqlalchemy中选择ORM和核心时,业务对象是什么?,orm,sqlalchemy,Orm,Sqlalchemy,《Essential SQLAlchemy》(Jason Myers,O'Reilly)一书提供了一个检查表,以帮助决定在ORM或Core之间进行选择: •如果您有不需要业务对象的数据,请使用Core •如果您将数据视为业务对象,请使用ORM 但我不知道什么是业务对象。当然,我甚至搜索谷歌,但仍然无法理解。需要一些具体的例子。核心只是一个SQL抽象工具包,它允许通过生成式Python表达式表达SQL语言(基本上是用Python编写文字SQL) ORM(构建在核心之上)代表了更高级别的抽象。ORM

《Essential SQLAlchemy》(Jason Myers,O'Reilly)一书提供了一个检查表,以帮助决定在ORM或Core之间进行选择:

•如果您有不需要业务对象的数据,请使用Core

•如果您将数据视为业务对象,请使用ORM


但我不知道什么是业务对象。当然,我甚至搜索谷歌,但仍然无法理解。需要一些具体的例子。

核心只是一个SQL抽象工具包,它允许通过生成式Python表达式表达SQL语言(基本上是用Python编写文字SQL)

ORM(构建在核心之上)代表了更高级别的抽象。ORM是一种将应用程序的丰富对象连接到关系数据库管理系统中的表的技术。使用ORM,应用程序中对象的属性和关系可以很容易地从数据库中存储和检索,而无需直接编写SQL语句,也无需使用较少的数据库访问代码

ORM的一些特性包括定义自定义关系的能力;各种设计模式,如关联代理和邻接列表;多种类型的表继承等


简言之:ORM允许您使用(业务)对象,无需构建较低级别的SQL。

我将术语
业务对象
理解为您的代码级对象,映射为
业务用例
。例如,如果您是一家销售公司,您可能有一个名为
Sale