我是 SQL 新手,但我正在尝试为目录类型数据库创建表。这个想法是,有些公司(公司表)在一个或多个类别中运营 - 例如包,鞋,皮带。我现在有一个类别表,其中包含大约 55 个类别的列表 - 我想将其保留为 future 添加的新类别。
我的表格如下所示:ID、Company_ID、类别 1( bool 值)、类别 2( bool 值)、类别 3...等等。
我的做法正确吗?还是有更好的方法?
这个想法是公司将能够登录,从中它将知道他们的 ID,他们将能够选中他们所操作的类别的选择并保存。理想情况下,我希望能够有一些 PHP 来自动显示表单中的复选框,而不是对其进行硬编码。稍后我希望能够从搜索或链接中选择 X 类别设置为 1 的公司。
最佳答案
这是一个多对多关系的情况。
您必须使用第三个表来表示关系,因此您有以下三个表:
Company (id, name , ...)
Category (id, name, ...)
Company_Category (company_id, category_id)
其中 company_id
是 Company.id
的外键,category_id
是 Category.id
的外键>.
希望这有帮助。
关于mysql - 如何最好地为一个用户或 ID 允许多个类别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28174356/