1

有些人可能知道 ER-Diagrams?数据库的模型

例如: http ://en.wikipedia.org/wiki/Entity%E2%80%93relationship_model

所以这是我的数据库模型:( 在此处输入图像描述 翻译:Werkstatt = Garage,Dienstleistung = Service,Kategorie = Category,Bewertung = Rating,bewerten = rate,besitzt = owns,hat = has)

我的问题是:

1)我可以建模多对多关系,一对一,一对多。我应该在需要时为他们使用自己的桌子吗?例如 MANY-to-MANY 关系需要一个自己的表。还是 Laravel 会通过其 Eloquent ORM 来处理这种关系?

2)您可以设计一个很好的数据库,例如不能有NULL值。或者它以适当的方式处理依赖关系或冗余(参见http://en.wikipedia.org/wiki/Database_normalization#Normal_forms)。我应该处理冗余和依赖关系,还是 Laravel 会再次处理这些问题?

所以总的来说,我只想知道,我的数据库设计应该走多远?我应该让它尽可能好,还是仅仅创建基本实体就足够了?

信息:在这里您可以看到如果数据库未标准化可能发生的后果: http ://en.wikipedia.org/wiki/Database_normalization#Free_the_database_of_modification_anomalies

问候

4

1 回答 1

0

在我看来,USER 和 GARAGE 之间应该没有直接关系。相反,应该将一个用户链接到 RATING(一对多),并将 GARAGE 链接到 RATING(同样,一对多)。所以我会将 Ratings 作为一个单独的表,每个评级都有一个用户 ID、一个车库 ID 和一个评级。我相信在这种情况下,您不需要单独的多对多表,除非您将评分视为多对多表(您不应该这样做——评分应该有自己的 Eloquent 模型,在事实上。)免责声明:我自己只是 Laravel 的初学者。

于 2013-02-07T01:11:53.283 回答