我搜索了....我看到很多優點,但似乎所有優點都來自於在線SQL比較。我知道內聯SQL是不好的。但爲什麼要與壞的比較來更好地展示其他?使用ORM工具(框架)的優勢?
如果使用存儲過程(可能是專有的),似乎沒有任何優勢依然存在。存儲過程在安全性和性能方面肯定提供了性能優勢(如果ORM可以超出存儲過程,那麼存儲過程就寫得很糟糕),而且寫得很好的存儲過程就是自動存儲庫(模式)。存儲過程絕對可以提供更好的事務和事務隔離控制。
我真的很感激答案 - ORM如何在使用存儲過程的架構良好的應用程序上更好。
---感謝所有我收到到目前爲止的答案......看來,優勢仍然來自使用ORM的「動態生成的SQL」比較使用「靜態寫入行SQL」中代碼。是的,它有優勢。但這不是他的問題。
的問題是更好的表述爲以下幾點:
如果考慮具有存儲過程來實現你的業務邏輯(SPS可以寫很先進,也很有效),在應用程序代碼(.NET ,JAVA),您可以根據業務需要組織非常簡單的存儲過程層包裝。我的問題是ORM如何超越這個架構(當然是設計良好的架構)。
我沒有看到一個ORM如何必然是正交存儲過程。 SPROC定義了一個面向動作的接口,但是ORMs(甚至那些不試圖在關係模型上強制使用OO概念的ORM)關注於暴露表以外的模型中的數據 - 例如一個明確定義的元組(或對象)的列表。一些ORM將允許使用適當的SPROC操作,而另一些則完全避免SPROC。所以......「這取決於」。 – 2011-06-03 05:13:26