【发布时间】:2010-11-27 18:02:18
【问题描述】:
我有一个需要存储大量值的项目。 该数据是一个包含 1024 个 2Byte 无符号整数值的数据集。现在我将一个值与时间戳和一个unik ID一起存储在一行中。 此数据基于时间触发器持续存储。
我想做的是将所有 1024 个值存储在一个字段中。那么是否有可能做一些例程,将一个字段中的所有 1024 个 2 字节整数值作为二进制存储。也许是一个blobfield。 谢谢。
兄弟。 恩霍伊
【问题讨论】:
我有一个需要存储大量值的项目。 该数据是一个包含 1024 个 2Byte 无符号整数值的数据集。现在我将一个值与时间戳和一个unik ID一起存储在一行中。 此数据基于时间触发器持续存储。
我想做的是将所有 1024 个值存储在一个字段中。那么是否有可能做一些例程,将一个字段中的所有 1024 个 2 字节整数值作为二进制存储。也许是一个blobfield。 谢谢。
兄弟。 恩霍伊
【问题讨论】:
是的。您可以将数据序列化为字节数组,并将其存储在 BLOB 中。大多数数据库中的 BLOB 将支持 2048 字节。
【讨论】:
要问自己的一个大问题是“我需要如何检索这些数据?”任何报告或查询,例如“什么 ID 的值 X 设置为 Y”,都必须从表中加载所有行并解析数据 AFAIK。例如,如果这是用户配置数据,您可能需要知道哪些用户的特定设置设置不正确。
在 SQL Server 中,我建议考虑使用 XML 数据类型并存储已知模式,因为这可以使用 XPath 进行查询。 MySQL 自 2007 年起不支持此功能,因此您可能无法选择。
我肯定会考虑将您可能需要以这种方式查询的任何数据分成单独的列。
另请注意,如果没有客户端应用程序,您将无法解释 BLOB 数据。
您总是想考虑举报。多年来,数据库通常以多个客户告终。
【讨论】: