## 是啥? ORM 是 "Object-Relational Mapping"(对象关系映射)的缩写。在数据库上下文中,ORM 是一种编程技术,用于将面向对象编程语言中的对象与关系型数据库中的表进行映射。 主要特点和优势: 1. 将数据库表映射到编程语言中的类。 2. 将表中的行映射到类的实例(对象)。 3. 将表中的列映射到对象的属性。 4. 提供了一种以面向对象方式操作数据库的方法。 5. 减少了直接编写 SQL 查询的需要,提高了开发效率。 6. 增强了代码的可维护性和可读性。 7. 提供了数据库无关性,使得切换不同的数据库系统变得更容易。 常见的 ORM 框架包括: - Python: SQLAlchemy, Django ORM - Java: Hibernate, JPA - Ruby: Active Record (Rails) - PHP: Doctrine, Eloquent (Laravel) - .NET: Entity Framework 使用 ORM 可以让开发者更专注于业务逻辑,而不是底层的数据库操作细节。但是,在某些复杂查询或高性能要求的场景下,可能还是需要直接使用 SQL 来获得更好的控制和性能。 ## 原理是什么? ```mermaid graph TD A[对象模型] -->|映射| B[关系模型] B -->|映射| A C[类] -->|映射| D[表] E[对象] -->|映射| F[行] G[属性] -->|映射| H[列] I[方法] -->|转换| J[SQL语句] ```