我从来没有真正拥有过手机(我拥有该帐户……长话短说),但在工作中我们拥有它们,我们希望获得帐户、设备(mifi、平板电脑、手机)之间的一系列关系, sim 芯片、数据计划等在工作中理顺。
我个人对此的理论是,我们需要将所有信息放入数据库中的多个表中,直到问题得到解决并且那里的信息有效。
以后我们甚至可以添加一个历史表,如果需要记住谁拥有它们,在哪里,哪个计划/哪个部门,以及每个计划的成本是多少。我们有两家公司 Verizon 和 AT&T 的计划。
那么我要问的是,这些信息之间的基本关系是什么?
据我了解,设备 ID(IMEID)应该是唯一标识设备的唯一密钥。
我不确定是什么标识了一个计划,也许是一个帐号……也许是一个电话号码……
我不确定所有变量都与此相关,但我很确定我可以为它规范化一个数据库,如果我能找出所有涉及的唯一键的话。
我还有一个 HR 数据库,用于跟踪我们的员工,我可以加入该数据库以记录计划、电话、设备等的历史记录……
以下是您需要通过的抽象层来跟踪谁拥有(支付)GSM 电话:
请注意,这适用于某个时间点。如果您需要随着时间的推移跟踪变化,那么一切都会变成多对多的,在交叉点实体中具有开始/结束日期。
数据库的核心一定是账户,也是客户。他们正在为公司捐钱,没有任何其他可能性。从逻辑上讲,一切都应该引用某个帐户。
其次,用户通过他们的 sim id 为公司的网络验证自己。每张 SIM 卡都应该只有一个帐户(用于支付通话费),但一个帐户可以有多个 SIM 卡。因此它是一个多对一的关系。
IMEI id-s 是手机的 ID。移动公司知道他们,因为每次登录时都会传达此号码,但通常会识别客户 - 并且他们的合同是关于 - 他们的 SIM 卡号码。
IMEI Id-s 并不真正存在于这个数据库中,尽管它们可以(而且大部分是)由手机公司记录。
在这种情况下,手机的登录是 sim 卡 ID 和 imei id 之间的联系实体。
于是关系图如下:
我用电话号码扩展了关系图,尽管最后我不确定。在正常情况下,它应该与 sim 卡具有 1:1 的关系。