MySQL 规范化数据库设计

MySQL Normalized Database Design

我有以下table structure。要求是需要归一化为3rd normal

我不确定 subscriberAddress 是需要放在新的 table 中还是可以放在 subscribers 下?你怎么看?其他还好吗?

users(userName, userFirstName, userLastName, password, image)
userRole(userRole)
subscribers(email, firstName, lastName)
subscriberAddress(geoLocationLatitude, geoLocationLongtitude)
products(productName,productPrice, productQuantity, productImage)

我看不到 table 之间的任何引用。 subscribers 和 subscriberAddress 如何关联? 如果订阅者只有一个地址,则可以将其放入订阅者中。 如果订阅者可以提供多个地址,请将它们放入另一个 table 并引用该订阅者。

首先table是否符合1NF和2NF?他们需要先进入 3NF。

可以修改table结构吗?如果是这样,我会添加一个唯一标识符,例如subscriberID,这是订阅者 table 的主键。此 ID 可以添加到 subscriberAddress,充当外键。

我会将 subscriberAddress table 分开。