1

我正在为我的 C# 应用程序开发身份验证系统,身份验证系统使用 PHP。它有用户,并且现在对一个人来说非常有效,比如我自己。我可以添加我自己的客户、设置他们的权限、更新我的程序以及做更多的事情。

但...

我希望它能够工作,这样我就可以让用户注册一个开发者帐户,他们可以从中控制自己的客户。但问题是,仅凭我的帐户,我就已经拥有三张桌子了。(客户、文件和全局)

那么我应该为每个客户制作一张全新的桌子吗?或者我应该把它们都放在一张大桌子上,用一列说明他们父开发者的 ID。

我真的希望这足够清楚......

如果您仍然感到困惑,这里有一些可能会有所帮助的图片(这是我的开发者帐户所需的三个表)



(别担心这些不是我的实际用户密码......我仍在网站上工作,现在都是示例内容)

4

2 回答 2

3

您应该将它们全部放在一个表中,并使用 ID 将它们链接到父级/您需要存储的任何其他信息。

如果您需要区分,您甚至可以有一个客户类型列。

无论哪种方式,为每个用户创建一个新表都不是正确的方法。

编辑:如果您担心桌子的大小,那就不要担心。只要您实施正确的索引,那么访问此信息就不会成为问题。MySQL 可以处理表中的数百万条记录。

于 2013-02-12T08:25:06.653 回答
2

“我希望它能够工作,这样我就可以让用户注册一个开发者帐户,他们可以从中控制自己的客户。”

所以,你有一对多的关系。

用户表...

还有一张客户表,他们有一个外键引用用户。

那是两张桌子。如果你认为你需要为每个用户创建新表,或者任何类似的想法,你几乎肯定是错的。

于 2013-02-12T08:25:18.897 回答