日期:2014-05-17  浏览次数:20988 次

关于数据库设计方面的问题
如果需要生成多个报表,频繁读取数据库中的多个表的话,可不可以这么设计?
1.在基本表的基础上,根据报表的主题,生成与报表主题对应的表(TABLE)或视图(VIEW)。
这样的话,我认为可以减少读取基本表中数据的频率,相对提高了访问数据库的性能,直接Select就可以了;
但这样的话,表的数量会很多,产生大量的数据冗余,会不会影响整个数据库的整体性能??

2.如果可行的话是建TABLE好,还是建VIEW好??为什么??
建视图不占空间,但管理上有些问题。
建表的话,会加大数据量和数据冗余。

对于以上的问题,有数据库设计开发经验的兄弟,给我点建议。怎么做才能平衡数据冗余和性能这两方面的问题??

谢谢大家了!!

------解决方案--------------------
建不建是一个效果,oracle会把经常用的数据读到内存中,以后在需要的时候就会直接从内存中读,不需要读数据文件了。你不需要考虑这个问题。
编程的时候注意使用绑定变量,效率会更高。