编辑以消除歧义:在MVC中查看而不是数据库视图。有没有办法根据条件选择不同的列?
你好,
我面对每一个我开发数据库驱动的应用程序时的设计决策。比方说,我有一个表X,我想根据视图获取不同的列。一个视图可能需要一个列,另一个视图需要所有列。
什么我目前做的是有一个单一的存储过程返回所有列select * from X
和我绑定取决于视图的列。我不相信这是正确的方法,因为我选择了不必要的列,数据库非常庞大,流量也在增加。
什么是接近这种设计的最佳方式?我应该保留1 SP方式还是为每个视图存储一个存储过程(每个SP返回不同的列)。有没有可能在这里有用的设计模式?我想过为SP指定列,但它会使维护成为一场噩梦,因为我必须跟踪每个视图的列参数。
谢谢。
我假设你所有在你的问题“视图”的使用涉及到视图在MVC(或MVP)的应用程序,而不是SQL视图? – 2011-03-30 06:30:45
这是正确的,对于单词视图模棱两可的使用感到抱歉。 – Ali 2011-03-30 06:36:32