03 2013 档案

摘要:在做项目时,经常在项目中会遇到有些值是通过其他表经过计算得来的,然后将计算结果保存到数据库中。比如在一个休假系统中,一个员工每年已休天数就是一个计算值,通过SUM员工的所有有效休假申请单可获得。再比如交易系统中的余额字段,对一个账号的所有流水进行SUM,所有收入减去所有支出就是余额。再比订单系统中,订单的总金额字段,就是订单明细的金额的SUM值。对于这些字段,都有一个共性,那就是这个字段是可以通过其他表的字段计算出来的,可以认为这个字段是冗余的,如果没有这个字段,那么我们的系统仍然可以设计出来并且功能一个都不会少。这个字段主要为了提高查询的性能,出报表时也方便,效率高。既然是一个冗余字段,那么 阅读全文
posted @ 2013-03-25 17:47 深蓝 阅读(3212) 评论(0) 推荐(0) 编辑
摘要:前段时间做一个项目,其中涉及到报表部分编写了大量复杂的SQL,比如其中的一个存储过程就有700多行。项目上线过后,进入维护阶段,发现大量的SQL很难维护。于是总结点经验教训:设计一、数据库命名遵循一些通用规范。数据库命名规范是个基本的命名标准,每个团队都有自己的命名规范,我们做项目中以全大写下划线分割作为标准。表名或字段名要准确表达其业务含义。以DATE结尾的数据类型都是date类型,以TIME结尾的数据类型是datetime类型。以IS开头的都是bool类型。二、大数据对象列应该独立成表。比如员工照片是一个blob对象,按照范式来说,这个字段完全可以放在Employee表中,但是出于性能的考 阅读全文
posted @ 2013-03-18 16:58 深蓝 阅读(4709) 评论(0) 推荐(0) 编辑


我要啦免费统计
点击右上角即可分享
微信分享提示