我正在建立一个电子学习网站。我有三种类型的用户:新手、中级和专家。我有 3 个表:讲座、章节和页面。对于这些表中的每一个,我都必须通过添加该讲座、章节和页面的用户类型来区分它们。
将相同的列名 category
(可以是新手、中级或专家)添加到所有 3 个表 是一个好习惯吗?
最佳答案
如果您稍后想为您的用户类别添加更多特征,最好的办法是为此创建一个单独的表(例如:user_categories)并在所有 3 个内容表中引用该表。它看起来像这样:
CREATE TABLE user_types (id int PRIMARY KEY, name VARCHAR(20));
CREATE TABLE lectures (id int PRIMARY KEY, user_type int REFERENCES user_types(id));
您也可以引用这篇文章来决定如何处理您的案例:How far to take normalization in database design?
关于mysql - 多个表中的列名相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34723338/