ActiveRecord模式是否仅适用于具有更简单DataAccess要求的应用程序?

时间:2011-04-15 14:00:46

标签: sql-server stored-procedures activerecord

我是ActiveRecord模式的一个相对较新的用户。我想知道这种模式对于大型关系数据库是否实用。假设我们有大约15个相关表,使用AR模式进行CRUD是否有意义? 例如:

tblCustomer

tblCustomerNames

tblCustomerAddresses

tblCustomerDocuments

tblCustomerPhoneNumbers

等等.. 请注意,客户可能有多个名称(如少女,合法等),多个地址。出于某种原因,我觉得如果我们使用存储过程会更好更快。可能是我回到了我习惯的状态,但如果我错了,请纠正我。

1 个答案:

答案 0 :(得分:1)

你是对的。在加载相关数据时,Active Record模式会变得非常繁琐。有一些避免这种情况的技术,但总的来说,我会创建一组公开所需数据的视图。在我看来,最好只将特定屏幕上需要的数据作为只读视图公开,并使用存储过程执行修改。 出于安全考虑,CRUD也应通过存储过程进行。使用存储过程可以为您提供额外的优势 - 您可以更改操作的内部逻辑,而无需更改客户端代码。