我有一个连接多个表的查询(而且很耗时),并将数据返回到一个视图。稍后,我想将此数据从视图传递到另一个视图。我知道我可以使用具有隐藏字段的表单来传递数据,或者在第二个视图的控制器中重新查询数据库。
我想知道,就效率和性能而言,是否有一种“首选”的方法来做这件事。使用隐藏字段将数据从视图传递到控制器是否更好?或者重新查询控制器中的数据库以获取数据更好?
发布于 2013-04-29 15:47:12
隐藏字段总是比数据库命中()快得多。您应该尽可能地利用它们的使用,重新查询数据库是使用隐藏字段的主要好处之一。
发布于 2013-04-29 19:17:34
IMO;你有10列,并且它在avg上连接到大约3个具有大约4列的其他表,这应该不会花费太多时间。
您可以创建视图并对视图进行索引,以获得更好的性能。
我认为更好的做法是创建一个索引视图,并使用它在另一个控件上查询,以便从数据库中获取实时数据。因为有很多机会,一旦你第一次加载数据,它可能会改变或插入新的记录,直到你遍历到下一个视图。
因此,尝试创建带索引的视图,您肯定会获得性能提升。
谢谢,Jigar
https://stackoverflow.com/questions/16215544
复制相似问题