【问题标题】:CRM Database Design for multiple users [closed]多用户的CRM数据库设计[关闭]
【发布时间】:2012-04-21 17:34:15
【问题描述】:

好的,我已经使用 PHP 和 MySQL 为客户构建了一个自定义 CRM Web 应用程序。该应用程序似乎对他们非常有效,因此我决定创建一个向公众开放的商业版本。

它的基本思想是从网站获取数据,然后用这些数据填充数据库。目前网站前端有简单的插入语句。

问题是,我希望人们能够注册该服务,创建一个帐户并自行定制以满足他们的需求。我的想法是,一旦他们注册,他们将获得一个表单操作,该操作会在安装到他们的页面上时提交到他们的帐户。

关于数据库等中的表,目前只有一个客户表,因为只有一个网站在使用它。如果人们要注册并使用该服务,我是否为每个帐户创建一个新表?这可能是对的,但对我来说似乎有点傻。或者有没有更好的方法来解决这个问题?

【问题讨论】:

  • 除非您知道必须创建多个,否则请使用单个表。如果有问题,你会学的,你会知道的。

标签: php mysql database database-design relational-database


【解决方案1】:

通常,最好添加一个customer_id 列,并在所有MySQL 查询中添加一个WHERE customer_id=12345 子句。每个客户都有一个单独的表当然是可能的,但它可能无法很好地扩展。

【讨论】:

  • 谢谢。所以你建议一个通用的“数据”表来保存每个人的表单数据?
  • 最初,是的。如果你成为下一个 Facebook,你会想开始分片,但这样开始肯定没有意义。
  • 哈哈好吧,谁知道呢?什么是分片?
  • 我在提供此链接时强烈警告您现在几乎可以肯定不需要担心这个问题,而且可能永远不需要en.wikipedia.org/wiki/Shard_(database_architecture)
  • 好的。我怀疑这个应用程序会变得那么大,但知道什么是可用的总是好的。谢谢
猜你喜欢
  • 2015-03-20
  • 2017-01-04
  • 2017-10-06
  • 2018-05-02
  • 2019-05-22
  • 2010-09-09
  • 2010-09-22
相关资源
最近更新 更多