我目前正在开发应用程序后端(业务目录)。主要的“演员”是一个“入口”,它将具有:OO中的后端应用程序PHP:有效地构建类/表格
- main category
- subcategory
- tags (instead of unlimited sub-levels of division)
我很新的面向对象,但我仍然想在这里使用它。数据库是MySql,我将使用PDO。
为了试图找出为支持上述条目分类而应该使用哪种数据库表结构,我在考虑Wordpress使用的解决方案 - 通过几种方法在条目和cats/subcats/tags之间建立关系表格(术语,分类法,关系)。目前让我从这个解决方案中脱颖而出的事实是,任何类型的每个关系都由关系表中的一行表示。如果有50,000个条目,我会附加到一个特定的条目:主猫,子猫和多达15个标签可能会减慢应用程序(或者我错了)?
然后,我学到了一点关于Table Data Gateway的看起来很好的解决方案,因为我喜欢每个类有一个表的想法,但是后来我读到,实际上没有办法成功地解决OOP和关系之间的阻碍错配-mapping。
有没有其他方法可以适合这种情况?我想我将与打算:
- tblentry
- tblcategory
- tblsubcategory
- tbltag
结构。关系将基于父母身份,但我很想知道这是否足够?我可以在这里使用外键和级联删除选项(这是我不太熟悉的东西,在我看来,这是一种更直观的表格中元素之间的关系)?