关于表结构的问题。
这里有一个小场景来介绍这个问题:假设你想在一个表中存储一个类(let A)的对象。
您有两种可能的表结构来执行此操作:
Structure A: "one field per row":
id (int),
name (text),
credit (int),
birthday (date).
Structure B: "all data in one row":
id (int),
data (bigtext).
考虑以下:
- 您将永远不会执行请求过滤/排序字段名称/信用/生日
- 在编辑字段之前,您要加载对象
- 字段名称/信用/生日没有选项/修饰符(键/唯一/...)
这两个表结构有什么区别?
.
具体来说,我正在做一个 PHP/SQLITE 应用程序 - 在某一时刻 - 需要将对象存储在数据库中。我希望能够轻松添加 db-stored-class 而不必每次都编辑我的数据库方案。使用“结构 B”可以让我这样做。它可能看起来很脏,是的,你可能已经被教导你需要有很好的类型行..但为什么不呢?
“结构A”的主要优势不只是选择过滤器和更新的有效性吗?