ORM(学说)和SQL之间的代码比较?

Posted

技术标签:

【中文标题】ORM(学说)和SQL之间的代码比较?【英文标题】:code comparison between ORM (doctrine) and SQL? 【发布时间】:2010-04-15 06:32:35 【问题描述】:

我已经阅读了很多关于 ORM 的内容,但想知道是否有类似 ORM 的学说和 SQL 之间的并列比较示例,以便您了解哪些更容易维护?

在 google 中找不到这样的比较。

【问题讨论】:

【参考方案1】:

“更容易维护”是主观的。 ORM 总是有一些限制。它试图将平面关系 SQL 放入 OOP 的 procrustean 床中。如果您是 OOP 的忠实粉丝,ORM 可能适合您。否则使用 SQL。

换句话说,ORM 使通用任务变得更简单,但任何不寻常的任务都会让人头疼。

【讨论】:

【参考方案2】:

我不知道这样的代码比较,但我个人更喜欢使用 ORM,因为它允许我用“业务”术语而不是“表”术语表达查询。例如

Query(Customer).filter_by(Customer.address.has(Address.state == 'Whatever'))

【讨论】:

以上是关于ORM(学说)和SQL之间的代码比较?的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis和hibernate的优缺点比较

学说 ORM 和继承

学说 ORM 和具有抽象类策略的工厂

mybatis基础知识

学说 2 和 ORM:如何缓存某个实体的每个查询?

mysql从学说原始sql创建过程的问题