什么是ORM?

Posted loganchen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是ORM?相关的知识,希望对你有一定的参考价值。

ORM全称是Object Relational Mapping(对象关系映射),其主要作用是在编程中,把面向对象的概念跟数据库表的概念对应起来。举例来说就是,我定义一个对象,那就对应着一张表,这个对象的实例,就对应着表中的一条记录。

从代码上来看吧。

from django.db import models

class User1(models.Model):
    name = models.CharFiels(max_length=255)

对应的数据库中可能就是一个表:user,表里面有一个字段name,类型是varchar(max_length=255)

 

那么,如果我们有一个User的实例,比如:

user = User1()
user.name=jack
user.save()

那么对应着数据库中就有一条记录,name为jack。此时的user实例,对应的正式这个表的这一条记录。

用ORM的好处就是你不用操作表,可以在程序中用面向对象的思路,直接操作对象即可。比如上面那个代码,我要插入一条语句,直接User.save()即可。ORM会帮我们产生一条SQL语句。

INSERT INTO user1 (name) VALUES ("jack");

当然,这只是从对象到SQL的映射,还有从SQL到对象的映射,也是类似的过程。

以上是关于什么是ORM?的主要内容,如果未能解决你的问题,请参考以下文章

ORM之殇,我们需要什么样的ORM框架?

什么是ORM?

C# 最有用的(自定义)代码片段是啥? [关闭]

此 Canon SDK C++ 代码片段的等效 C# 代码是啥?

有人知道下面的代码片段是啥意思吗?

iphone / Objective c的最佳代码片段网站是啥[重复]