是否违反 2NF?

is it violate 2NF?

我的table

本书

在哪里 pfk - Primary-Foreign 密钥;

{ID, langID} - PK;

chaptersPrice - 本书每章的价格。示例:

BookName1:

BookName2:

我认为在这个table中一些属性在功能上依赖于主键(ID)的部分:

{ID} -> {发布年份}

{ID} -> {章节价格}

{ID} -> {缩略图}

我应该这样实现吗

本书

book_attrs

然后书和book_attrs有“one-to-many”关系

一些注意事项可能取决于您的用例/领域模型。

  • 一本书的发行年份通常不会改变(在简单的情况下),因此它可能在 BOOK table.

  • 从 'book store' 的角度来看,'price' 可能处于不同的 table,因为它会根据市场情况进行更新。