微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

重新设计CRM中的成员实体的建议

如何解决重新设计CRM中的成员实体的建议

| 我们有一个CRM,其中包含memebr实体作为系统中最重要的实体。事实是,它具有太多的属性,因此无法标准化。这是属性
[MEMBER ID],[FirsT NAME],[LAST NAME],[TITLE],[ADDRESS 1],[ADDRESS 2],[ADDRESS 3],[POST CODE],[TELEPHONE HOME],[TELEPHONE WORK],[GENDER],[DURATION OF MEMBERSHIP],[START DATE],[AMOUNT PAID],[BALANCE],[STATUS],[dob],[MONTH FEE],[ORIGINAL START DATE],[PAYMENT TYPE],[HEAR],[Interest],[NUMBER MONTH FEES],[FirsT MF DUE DATE],[LAST VISIT],[CARD NUMBER],[BANK NAME],[SORT CODE],[ACCOUNT NUMBER],[DEFINE1],[DEFINE2],[DEFINE3],[DEFINE4],[DEFINE5],[DEFINE6],[DEFINE7],[DEFINE8],[DEPENDENT],[ROLL NO],[ALLOWED VISITS],[TOTAL VISITS],[CREDIT LIMIT],[JOINING FEE],[NON VAT MONTH FEE],[PAYMENT METHOD],[CentreId],[Letter Title],[Email Address],[Vehicle Registration],[Standing Order Reference],[Notes],[Outstanding Balance],[MobileNo],[FaxNo],[Nonparent Password],[Emergency Name1],[Emergency Relation1],[Emergency HomeTel1],[Emergency WorkTel1],[Emergency MobileNo1],[Emergency Name2],[Emergency Relation2],[Emergency HomeTel2],[Emergency WorkTel2],[Emergency MobileNo2],[Doctors Name],[Doctors Tel],[Medical Info],[Password],[MethodofContact],[Address 4],[Address 5],[Address 6],[ExtRef1],[ExtRef2],[ExtRef3],[ExtRef4],[OnMailingList],[HasChildren],[ParentMemberId],[MedicalIllness],[MedicalQuestion],[COMMENTS],[MembershipFeePaid],[JoiningFeePaid],[IsDeleted],[Pending],[Induction],[UserName],[CompanyName],[RowVer],[MembershipProductId],[Id],[EmailVerified],[ConcessionTypeId],[MemberTypeId],[Age],[renewal_Date]
我正在考虑将这件事标准化。有什么建议么?     

解决方法

首先,如果该字段已编号,则通常是标准化的候选对象。考虑将地址详细信息移出以开始。电话号码可以位于其他位置,并以类型存储,以免需要使用许多可能不使用的字段。如果为类型指定了顺序,则地址详细信息可以遵循类似的模式(例如,您可以得出字段应打印的顺序)。 银行详细信息是另一种选择。 这样考虑吧。成员应包含仅与成员直接相关的详细信息。不是会员的银行,地址等。它应包含其名字,姓氏,会员的直接属性的详细信息。 考虑查看以下这些链接中的一个想法: http://databases.about.com/od/specificproducts/a/normalization.htm http://support.microsoft.com/?id=209534 http://ipconflict.co.uk/2009/12/29/basic-guide-to-database-normalization-first-normal-form/     ,数据库重构通常是一个很漂亮的过程。查看您是否可以通过RedGate获得SQL Refactor的许可证。 重构的一种方法是创建一个模仿当前表结构的视图。一旦外部应用程序从视图而不是从表中读取,就可以开始重构表(然后您只需要修改视图,而无需修改应用程序)。当然,这对插入或更新数据没有帮助,这是另一回事了:)     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。