是否更好地在表字段中存储值数组或定义子表来存储数组的每个值?

时间:2014-03-30 16:53:18

标签: mysql sql sql-server

我很想知道,因为我觉得这不是在表字段中存储数组值的最佳方法。我见过人们序列化数组和反序数据反序列化,其他一些使用csv。我不知道,但我觉得这样做感觉不舒服。我想知道这是一种有效的做法还是最好的做法。 我还认为当您想要编辑包含每个字段和值的子表中的值时,问题就出现了,如何知道数据是否已经插入并重新创建到父表,如何知道是否需要添加或更新单个值?

1 个答案:

答案 0 :(得分:0)

它始终是上下文的。如果您只是问一个抽象问题,那么通常您会添加一个子表,用于您规范化的所有常规原因。

但是,如果您遇到永远不会更新数组的情况,您可能总是希望选择整个数组,您永远不会过滤数组中的任何成员或成员组合,没有描述数组中任何一个成员的属性,你的速度极快......你明白了。也许对于日志。但您可能会考虑将日志写入关系数据库表以外的其他内容。