有谁能通俗点的给我讲解下ORM是什么吗?网上查的一大把专业理论名词。看了一头雾水。有谁能通俗点将吗?

我自己这样理解对不对?ORM就是把数据库上的数据用对象的方式表达出来。例如对象的name属性代表着数据库中的name字段。... 我自己这样理解对不对?ORM就是把数据库上的数据用对象的方式表达出来。例如对象的name属性代表着数据库中的name字段。 展开
 我来答
我零0七
2017-05-02 · 热衷人生的有效性,关注自我
我零0七
采纳数:684 获赞数:11738

向TA提问 私信TA
展开全部

我用c#的说法给你解释一下:

在ORM出现之前,.NET语言对数据库操作都是使用ADO.NET

就是手动打开关闭SqlConnection ,然后手动拼接SQL语句,如:

select * from student;

直接使用SQL语句虽然能带来极大的性能体验,但是也会有很多问题:

  1. SQL语句的错误不好检查(因为SQL语句全是字符串,无法做语法检查)

  2. 接收到的数据全是弱类型,如果你想要使用基本都要做类型转换


ORM就是用本地的model代替数据库里面的各种表,你直接通过操作dbContext就可以获得数据库中的数据,然后它还使用一些技术把ADO.NET中一些麻烦的事给解决了

在EF中使用LINQ来编写数据库操作语法,ORM会自己将LINQ语句翻译为对应的SQL语句,然后将返回的数据自动做类型转换生成对应的model,就像这样:

var studentList=dbContext.Student.ToList();

使用ORM后既有语法检查,又省略了很多以前繁琐的操作,可以让开发人员将更多的注意力集中到业务的处理上,提高他们的效率

同时一些好的ORM还会有缓存处理、合并执行SQL等其它功能;它绝对是现代中小型系统的开发必备

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式