我可以在一个表中创建几个表,mysql吗?
我有一个数据库与6个表。我可以在一个表中创建几个表,mysql吗?
其中一个表被命名为类别,它有5或6个类别。
例如:具有喜剧,剧情,惊悚,恐怖,浪漫子类别等
所以我可以在表中添加子类别,或者我应该创建它们像电影类别表?
如果我有很多数据要添加到数据库中有没有更简单的方法来做到这一点?
我正在与xampp。
将categoryOf
字段添加到category
表单中,它将用于存储“父类别”的标识。
对于子类别,使用此字段指向它是其子类别的类别。 保留字段为空(主)类别条目
例如:
id name categoryOf
0 comedy NULL
1 drama NULL
2 sub-comedy 0
3 sub-drama 1
4 sub-comedy2 0
注意:使用这种方法,你甚至可以添加子子类,如果你喜欢...
“*使用这种方法,你甚至可以添加子子类别,如果你喜欢*” - 你可以,但是因为MySQL不支持递归功能,所以很难查询和维护。如果你想获取所有喜剧,包括它的后代,该怎么办?在MySQL中,这种分层数据通常使用嵌套集合或传递闭包表格进行最佳建模。 – eggyal
问题是关于存储和这种方法仍然有效,并且非常简单,即使是子类别也是如此。在一个查询中获取一个类别及其所有子类别的所有内容对于使用一个查询可能是/不可能的/困难的,但是在一个查询中这样做不是(还)需要的。 – Veger
我的观察是,虽然这种邻接列表模型很容易写入,但通常很难读取。我只是在评论别人的好处,根据自己的需要,替代品的确存在可能更有用/更适用。如果将存储视为只写,那么它的用途是什么目的是值得怀疑的。 :) – eggyal
能你是否明确了子类别的含义以及它们与类别和/或电影的关系? – Malkus