codeigniter中活动记录的主要优点是什么?

时间:2017-05-25 08:09:07

标签: php codeigniter

在codeigniter PHP框架中,我们可以使用普通的SQL查询,也可以使用活动记录。在这里,我已经了解了活动记录语法少于正常的SQL查询。 任何人都可以告诉我在codeigniter中主动记录的主要优势是什么?

提前致谢

3 个答案:

答案 0 :(得分:2)

Active Record设计模式提供了一种处理数据(创建/加载,修改,更新,删除)的简便方法,而无需处理技术细节。

它的主要缺点是,如果不使用数据库就会使单元测试成为不可能(这会大大增加测试执行时间并打破单元测试所需的隔离。)

为什么CodeIgniter的创建者选择使用Active Record作为在框架中实现数据持久性的主要方式?我不知道。
按原样使用它或前进并使用另一个框架。

答案 1 :(得分:1)

这就像将SQL与ORM功能进行比较一样,因为ACTIVE RECORD在CI中用作ORM。

以下是ORM的好处列表:

  1. 生产力:数据访问代码通常是一个重要部分 一个典型的应用程序,以及编写该代码所需的时间 是整个开发计划的重要组成部分。什么时候 使用ORM工具,代码量不太可能降低 事实上,它甚至可能会上升 - 但ORM工具可以产生100%的效果 数据访问代码自动根据您定义的数据模型, 只是片刻。
  2. 应用程序设计:由经验丰富的人员设计的优秀ORM工具 软件架构师将实施有效的设计模式 几乎迫使你使用良好的编程实践 应用。这有助于支持清晰的关注点分离 和独立开发,允许并行,同步 开发应用层。
  3. 代码重用:如果创建类库以生成单独的DLL 对于ORM生成的数据访问代码,您可以轻松地重用数据 各种应用中的对象。这样,每个人 使用类库的应用程序不需要数据访问代码 完全没有。
  4. 应用程序可维护性:ORM生成的所有代码都是 大概经过充分测试,所以你通常不需要担心 广泛测试。显然你需要确保 代码可以满足您的需求,但广泛使用的ORM可能具备 代码在各种技能水平上被许多开发人员攻击。过了很长时间 术语,您可以重构数据库模式或模型定义 而不影响应用程序如何使用数据对象。
  5. 您可以根据需要更改后端数据库 在使用OBJECTS而不是使用OBJECTS时担心查询语法 查询。

答案 2 :(得分:1)

它确实使您的代码更清晰,我只是在我必须做一些非常复杂的SQL内容时才使用它,比如构建多表搜索查询。我推荐它的代码清洁度很高。
它有助于防止Sql注入。 但对于一些复杂的SQL查询,您可能更喜欢正常的SQL查询。