码迷,mamicode.com
首页 > 其他好文 > 详细

Django 第十课 1.【ORM模型】

时间:2018-08-17 12:50:58      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:而且   gre   font   djang   转换   业务   灵活   性能   分享   

ORM模型介绍

随着项目的越来越大,采用写原生SQL的方式在代码中会出现大量的SQL语句,那么问题就出现了:

1:SQL语句重复利用率不高,越复杂的SQL语句条件越多,代码越长。会出现很多相近的SQL语句

2:很多SQL语句是在业务逻辑中拼出来的,如果有数据库需要更改,就要去修改这些逻辑,这会很容易漏掉对某些SQL语句的修改

3:写SQL时容易忽略web安全问题,给未来造成隐患。如,SQL注入

 

ORM, 全称object relational Mapping ,中文叫做对象关系映射,通过ORM我们可以通过类的方式操作数据库,而不用再写原生的SQL语句。通过把表映射成类,把行作为实例,把字段作为属性,ORM在执行对象操作的时候最终还是会把对应的操作转换为数据库原生语句。使用ORM有许多优点:

1:易用性:使用ORM做数据库的开发可以有效的减少重复SQL语句的概率,写出的模型也更加直观,清晰。

2:性能损耗小:ORM转换成底层数据库操作指令确实会有一些开销。但是从实际的情况看,这种损耗很少(不足5%),只要不是对性能有严苛的要求,综合考虑开发效率,代码的阅读性,带来的好处要远远大于性能损耗,而且项目越大作用越明显。

3:设计灵活:可以轻松的写出复杂的查询

4:可移植性:Django封装了底层的数据实现,支持多个关系数据库引擎,包括流行的MySQL,PostgreSQL和SQLite。可以非常轻松的切换数据库

技术分享图片

 

Django 第十课 1.【ORM模型】

标签:而且   gre   font   djang   转换   业务   灵活   性能   分享   

原文地址:https://www.cnblogs.com/nelsen-chen/p/9492593.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!