我们没有在项目中使用过ORM,一个原因是一般公司的运维人员都基于数据库管理工具(GUI或命令行)使用SQL直接操作数据表(查看、编辑、统计等),必须考虑运维的需要。如果ORM是从对象设计入手,不知道这样出来的表会不会不利于使用数据库管理工具直接管理?
ORM是否会导致难于基于数据库管理工具管理?
(3 posts) (2 voices)-
Posted 1 year ago #
-
ORM框架建立了一个抽象层,主要的目的是调和OO与关系数据库之间的差别,让程序员更专心业务逻辑而非数据存储细节,不仅能大大减少手工SQL语句,也在一定程度上增强了代码的可读性,对提高开发效率有所裨益。虽然ORM不能解决所有问题,但只要它能解决大部分(比如80%)的问题,便不失为一种可行方案。至于数据库管理问题,由于ORM自动生成的表和语句与人工生成的并无实质区别,同样可用数据库管理工具来维护。唯一的区别是:一个以对象模型来设计,一个以关系模型来设计,二者可能会有一定差异,但大多时候并不大。同时ORM也越来越灵活、强大,支持各种关联和嵌入SQL。另外,ORM工具不仅支持从对象到数据库的转换,也支持从数据库逆向生成OO代码。最后,真正复杂的数据库逻辑最好用stored procedure来封装,灵活、高效、安全、易重用和维护,也方便用数据库工具来调试、调优。
Posted 1 year ago # -
>>真正复杂的数据库逻辑最好用stored procedure来封装
我一个朋友最近的项目就大量采用stored procedure避免直接操作表,这的确是一个好办法。
Posted 1 year ago #
Reply
You must log in to post.