【发布时间】:2012-04-30 22:59:29
【问题描述】:
这是一个简单的问题,但我想我总是用错了方法。
我有三个名为 Page -> Tag -> Attribute 的表。 Tag 表接收 Page_Id(外键),Attribute 表接收 Tag_Id(外键)。
属性表也必须接收 Page_Id?
我从来没有这样做过,但是我看到了一个数据库 SQL 生成器可以做到这一点,所以我意识到这会让所有工作变得更容易,但这也是正确的方法吗?
使用表格的详细信息进行编辑: Page 表格包含 HTML 页面和一些属性,例如内容、标题、文档类型和 html 页面的所有其他单个元素。
Tag 表包含 html 页面的 HTML 标签,其中包含标签(a、p、br、h1、标题等)和整个标签等信息。
属性表包含一个标签的所有属性,就像一个有键和值的地图,其中每个条目是一个属性和一个值。
页面包含多个标签 (1:N),标签包含多个属性 (1:N)。每个表都包含一个唯一标识。
【问题讨论】:
-
我想我有一些相关的东西要在这里添加,但我想在我开始之前更好地了解你的表结构。你能编辑你的问题并包括表结构和示例数据吗?
-
@Catcall 我用有关表格的更多详细信息编辑了我的问题。
-
谢谢,但这对我没有帮助。在我开始之前,我宁愿先看看表结构本身 (SQL DDL),包括它们的主键和外键——而不是表结构的描述。几行示例数据也会有所帮助。跨度>
标签: database normalization rdbms