善用数据库(1)
1.满足基本的范式:通常3NF一般认为是必要的,不认为范式的满足是为了节省空间,而是为了更好维护数据的一致性;维护数据的一致性代价非常大的!
2.一定要避免非字段化:这个连1NF也不满足了,表中有表啊;笔者认为,应该把字段尽可能的细化!
3.选择合适的字段类型:哈哈,见过高人的设计,基本就是char和数字,不知道那些数据库提供商为什么要提供这么多种类型啊!
4.使用约束:通常是业务规则的一部分,也避免DBA操作时犯错误啊;比如非空、范围约束等;
5.参照完整性:笔者提倡使用啊,看看MSCRM的设计对SystemUser的参照,吓死人啊,但笔者是坚决拥护的;对效率的影响,和索引相比呢?
6.级联删除:一般是明显的主细表选择就好了,难道更新、删除SystemUser要更新、删除所有其相关的表?
7.冗余的维护:比如在主表上对明细的汇总,提倡使用触发器啊,为什么不呢?
posted on 2008-06-03 17:53 木人(我现在不是老大) 阅读(126) 评论(0) 收藏 举报
浙公网安备 33010602011771号