|
1
3
这是非常主观的,但是在我走上抽象阶梯之前,我宁愿编写我的应用程序,使用DDL修改数据库模式,以匹配它正在使用的实际实体的具体方面,而不是抽象静态模式,以便能够存储关于任何潜在实体的数据。 在某种程度上,有点好笑,嗯,你的建议已经完成了。。。。它被称为关系数据库。每一个RDBMS都是一个软件工具,旨在能够对任何可能的实体集及其属性进行建模,从而准确地建模这些实体及其之间的关系。 |
|
2
3
虽然您当然可以将数据存储在这样一个数据模型中,但至少存在两个问题。 第一个问题是控制数据。当描述“hotel”时,必须定义的属性和元数据集是什么?酒店可以合法地输入哪些元数据类型?与此相关的是“当我从列表中删除酒店时,还需要删除什么?”?当我从列表中删除所有酒店(我再也不想存储有关酒店的信息)时,还需要删除什么?它是可怕的(可怕的?)很容易把各种无关的、未被引用的数据输入数据库。 第二个问题是检索数据。假设我想知道某个酒店的所有信息?我该如何对此编写查询?实际上,即使插入数据也很困难,但是选择它,如果有的话,也很困难。如果我只想要三个属性,那就很容易了——如果酒店真的拥有所有属性。如果酒店只指定了三项中的两项,那就更难了。但假设这家酒店有30份贡品,这并不多。那就非常困难了。 你所描述的是一个被称为EAV或 Entity-Attribute-Value 数据模型。人们普遍认为这是一个“坏主意”,因为这是一个普遍的想法。 |
|
|
3
1
你所描述的也被称为三孔。三元组是主宾谓词(Hotel有房间,Joe喜欢HotelX等)。有运行这些东西的机制(TrimPestReor实现)、控制数据(如本体)和查询它们(例如SPARQL语言)。然而,这都是相当前沿的东西,并且已知有可伸缩性问题。然而,结合NoSQL方法(在一个大型文档商店中索引所有酒店等),这是一个值得关注的有趣领域。 |
|
|
blogger13 · 视频租赁店数据库的规范化 1 年前 |
|
|
ì¤ì¤í · 为什么LEFT INNER JOIN被弃用? 1 年前 |
|
|
relatively_random · 确保两个表之间一致的共同参考 1 年前 |
|
|
Grenish Rai · Firestore错误“用户文档不存在” 2 年前 |
|
|
Saijo-Shi · PLpgsql中的更新触发器 2 年前 |
|
Dante · Django::配置不当:池不支持持久连接 2 年前 |
|
YouLocalRUser · 删除重复行,保留第一行 2 年前 |