首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >特定情况下CRM用户表的数据库设计

特定情况下CRM用户表的数据库设计
EN

Stack Overflow用户
提问于 2012-01-03 17:05:12
回答 3查看 1.9K关注 0票数 0

我正在为我们的CRM系统设计一个数据库,需要对CRM用户表提供一些帮助。

用户类型:

  1. 管理员
  2. 第二分店销售产品
  3. 第三分店销售产品
  4. 客户端登录

现在,对于这个场景,让所有用户都在一个表中,并有一个名为" type“的表属性来标识用户的类型是否有意义呢?还是应该为每种类型的用户设置一个单独的表?此外,销售代表之间也会有一些信息共享。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-03 17:15:08

通常,我通常使用一个User表,其中包含一个与之关联的Type。如果您有要存储的其他Sales属性,请创建一个带有外键的SalesRep表,返回到User表。然后,创建一个连接UserSalesRep的视图,从逻辑上看,它似乎只有一个包含销售代表所需的所有属性的usvSalesRep表。

但是,这在很大程度上取决于数据量和事务负载,因此您可以在那里提供更多的信息是有用的。

票数 1
EN

Stack Overflow用户

发布于 2012-01-03 17:17:44

这取决于您期望的用户数量。

但通常只有一张桌子就够了。

如果您有数以十亿计的用户,也许您可以执行水平划分并创建多个表。

票数 1
EN

Stack Overflow用户

发布于 2012-01-03 17:50:49

单张桌子应该可以。我不同意在这种情况下,数字用户对它的设计有很大影响。

只要有可能,您就应该设计您的表来模拟现实生活。管理员,销售代表等只是他们是谁的描述/属性。最终,他们都是“人”..。或者用户。因此,有一个“用户”表与"Admin","SalesRep“作为态度是有意义的。只有当用户只能是一个“类型”时,才使用“类型”方法。如果可以是多个用户类型,则使用单独的列。即。一个可以同时是SalesRepBranch2和SalesRepBranch3。可能会考虑进一步正常化。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8715852

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档