日历

September 2020
M T W T F S S
 123456
78910111213
14151617181920
21222324252627
282930  

ORM是否会导致难于基于数据库管理工具管理?

Home Forums 《冒号课堂》讨论区 ORM是否会导致难于基于数据库管理工具管理?

Tagged: , ,

  • This topic is empty.
Viewing 2 reply threads
  • Author
    Posts
    • #1131
      Todd
      Member

      我们没有在项目中使用过ORM,一个原因是一般公司的运维人员都基于数据库管理工具(GUI或命令行)使用SQL直接操作数据表(查看、编辑、统计等),必须考虑运维的需要。如果ORM是从对象设计入手,不知道这样出来的表会不会不利于使用数据库管理工具直接管理?

    • #1344
      hui
      Keymaster

      ORM框架建立了一个抽象层,主要的目的是调和OO与关系数据库之间的差别,让程序员更专心业务逻辑而非数据存储细节,不仅能大大减少手工SQL语句,也在一定程度上增强了代码的可读性,对提高开发效率有所裨益。虽然ORM不能解决所有问题,但只要它能解决大部分(比如80%)的问题,便不失为一种可行方案。至于数据库管理问题,由于ORM自动生成的表和语句与人工生成的并无实质区别,同样可用数据库管理工具来维护。唯一的区别是:一个以对象模型来设计,一个以关系模型来设计,二者可能会有一定差异,但大多时候并不大。同时ORM也越来越灵活、强大,支持各种关联和嵌入SQL。另外,ORM工具不仅支持从对象到数据库的转换,也支持从数据库逆向生成OO代码。最后,真正复杂的数据库逻辑最好用stored procedure来封装,灵活、高效、安全、易重用和维护,也方便用数据库工具来调试、调优。

    • #1345
      Todd
      Member

      >>真正复杂的数据库逻辑最好用stored procedure来封装

      我一个朋友最近的项目就大量采用stored procedure避免直接操作表,这的确是一个好办法。

Viewing 2 reply threads
  • You must be logged in to reply to this topic.
 请您评分1星(很差)2星(不行)3星(一般)4星(不错)5星(很棒)