Nic*_*ick 8 database-design terminology
对此类问题的回答和讨论讨论了折叠表与透视表。
例如。
纸质演示文稿和有声电子演示文稿之间的唯一区别在于,后者的折叠桌结构更方便,而前者的枢轴桌结构...
我在谷歌上找不到关于这些术语的含义的任何信息(谷歌给出了关于蛋白质结构的结果)。
有人可以用例子解释这些术语的含义吗?
Wor*_*DBA 10
这只是表示数据的不同方式。也称为宽(枢转)和长(折叠)。作为一个例子并保持简单,假设我们有一个包含 3 个属性的记录:id
, name
,description
在宽(旋转)版本中,每个属性都将是它自己的列,如下所示:
CREATE TABLE `example_table` (
id int not null,
name archer(50) not null,
description archer(100) null
)
Run Code Online (Sandbox Code Playgroud)
在长(折叠)格式中,您将有两列,如下所示:
CREATE TABLE `example_table` (
property varchar(50) not null,
value varchar(100) not null
)
Run Code Online (Sandbox Code Playgroud)
如果列事先未知或可能经常更改,则后者为您提供更大的灵活性。但是,它的实现通常更复杂,因为您必须设计一种方法来知道值是什么类型,然后您有序列化/反序列化到存储类型的开销(在本例中为 varchar(100))。
当属性不经常更改并且预先知道时,宽格式更好。这将提供更好的性能,但如果需要更改,则灵活性会降低。
通常,如果您知道要存储的数据的结构,则在可能的情况下选择宽格式,如果您需要最大的灵活性并愿意接受增加的复杂性,则选择长格式。
归档时间: |
|
查看次数: |
798 次 |
最近记录: |