MySQL中表结构的建议

时间:2016-08-18 18:02:57

标签: mysql database-design relational-database

嗨,我正在进行一个小型的内部项目。目前它只服务于我的公司,但我想扩展它,以便它可以服务于多家公司。我目前的表格是USERSPROJECTS。我想开始存储公司特定信息并将其与USERS表相关联。对于每个用户,我将拥有一个属于他们所属公司的新列。

现在我还需要将公司模板存储在数据库中。模板存储为如下字符串:

  

“divider”,“events”,“freeform”等。

最初我认为每个单词应该作为一个单独的行进入,但是当我写这个时,我想也许我应该将所有模板存储在一个以逗号分隔的条目中(如上所述)。

总的来说,我是数据库设计的新手,我不知道如何最好地设置它。有多少个表,哪些列等等。目前,我的表结构如下所示:

PROJECTS
Project Number | Title | exacttarget_id | Author | Body | Date

USERS
Name | Email | Date Created | Password

提前感谢您提供的任何见解。

1 个答案:

答案 0 :(得分:0)

我要做的是创建2个表:

我会为不同的公司创建一个表,我们称之为COMPANY

Company_id | Title | Logo | (Whatever other data you want)

我还会为上面列出的设置创建一个表格,我们称之为COMPANY_SETTINGS

Company_id | Key | Value

这使您可以在将来灵活添加其他设置,而不会影响现有代码。无论当前版本使用多少设置,简单查询都会获得所有设置。

SELECT Key, Value FROM COMPANY_SETTINGS WHERE Company_id = :companyId

然后可以将结果放入关联数组中,以便在整个项目中使用。