![]() |
1
2
选项1很容易实现,但会涉及大量冗余的表定义。 选项2易于创建和编写查询,但空间效率较低
这是在SQL中对这类关系进行建模的典型权衡,这些解决方案中的任何一个都可能适合于非性能需求的用例。 |
![]() |
2
1
所以你有你的注释表和它的公共字段。 现在添加:
最后,您可以将数据实例与它们通过的字段关联起来 注\u动态\u注释\u字段\u数据
现在我们说:note_id 1有两个附加字段。第一个值为“Penguin”,表示发布者。第二个值为“Red”,表示一种颜色。 那么,到目前为止将其正常化有什么意义呢?
缺点: 搜索所有有发布者的便笺也不算太糟,因为发布者是“企鹅”。
|
![]() |
3
0
对于要存储但不必搜索的数据,另一个选项是将其序列化到/来自JSON,并将其存储在文本列中。这给了您任意的结构,但是您不能很容易地针对这些值进行查询。 另一个选择是转储SQLite并使用对象数据库。我好像记得有一两个人在为Android工作。不过,这些我都没试过。 |
![]() |
4
0
只需创建一个包含所有注释的公共字段的小表。 对于要输入的每个注释,您将在主表(包含公共字段)中创建一行,在包含额外字段的额外表中创建一行,并在主表中创建对该行的引用。 使用此解决方案: 1) 您有一个安全的设计(无法访问不属于笔记一部分的字段) 2) 你的数据库将得到优化 |
![]() |
Michael Samuel · MYSQL在以下情况下自动创建索引 7 年前 |
![]() |
Patricia Rozario · 数据库设计确保一对一关系 7 年前 |
![]() |
dryhay · MySQL“多对多”关系错误 7 年前 |
![]() |
L. Fox · 我在这里用的是什么样的Laravel雄辩的关系 7 年前 |
![]() |
Geoff Harper · 我应该如何构建关系松散的SQL db 7 年前 |
![]() |
waroxx · SQL—当多个表具有相同的列时,最好怎么做 7 年前 |
![]() |
Lumpi01 · SQL 2不同的注释类型-最佳解决方案? 7 年前 |
![]() |
Hayreddin Tüzel · 预约系统数据库建模[关闭] 7 年前 |