双方肯定都有道理关键是平衡点.就看你们的实际问题如何了?

解决方案 »

  1.   

    要根据实际情况来进行选择,不能走两个极端。
      

  2.   

    你们两说得都对,但是没有绝对正确的一方,只能说根据实际情况来评判。
    数据库冗余除了会浪费存储空间还会使数据维护其完整性显得相当麻烦,如对数据的更新删除等,需在A、B表中同时完成,也会造成一定的性能降低。
    但是保留一定量的冗余数据一般来说更有利于的数据的查询(不用再使用多表关联方式),在数据量大的情况下进行查询会比多表关联查询显得性能更高。
    我想你和你的工程师都应该根据具体情况来进行具体分析,并没有很死板的原则。最后说两句闲话:谁让他是工程师而你是程序员呢,唉……你可以针对实际情况就事论事来以你的理由说服他,如果你的工程师比较专横独断,嘿嘿,不干也罢……
      

  3.   

    没有冗余,程序设计的简洁性。这两点并不排斥。效率和可靠性。这个可以用提高硬件的办法来提高,反正硬件是很容易得到的。其实你的问题的关键是赶快做个决定。
      

  4.   

    简单的表连接不会带来效率下的下降,相反,数据库一行太长会增加I/O的次数,对于一般成熟的软件系统而言,一定有大量的数据计算,你的冗余一般用于显示,你的冗余数据也就没有什么作用。
    另外,对于一个大型信息管理系统而言,其生命周期长,再开发的模块多,一点的冗余也会给系统的提升带来很大的困难,作为程序员提出的建议。如果你要提高表连接的速度,应合理的建立索引。有些情况下,可以建立临时表,例如报表,但数据的一致性上逻辑要有严格的控制。例如会计上的制表和冲帐之间的关系。