在一个字段中将多个值存储为二进制

时间:2009-09-12 12:32:16

标签: mysql integer blob store

我有一个需要存储大量值的项目。 数据是一个包含1024个2Byte无符号整数值的数据集。现在我将一个值与一个时间戳和一个unik ID一起存储在一行中。 该数据基于时间触发器连续存储。

我想要做的是将所有1024个值存储在一个字段中。那么可以做一些例程,将所有1024个2字节整数值存储在一个字段中作为二进制。也许是一个blobfield。 感谢。

溴。 Enghoej

2 个答案:

答案 0 :(得分:0)

是。您可以将数据序列化为字节数组,并将其存储在BLOB中。大多数数据库的BLOB都支持2048字节。

答案 1 :(得分:0)

要问自己的一个重要问题是“我将如何检索此数据?”任何报告或查询(例如“哪些ID的值X设置为Y”)都必须从表中加载所有行并解析数据AFAIK。例如,如果这是用户配置数据,您可能需要知道哪些用户设置了错误的特定设置。

在SQL Server中,我建议考虑使用XML数据类型并存储已知模式,因为可以使用XPath查询。自2007年起,MySQL不支持此功能,因此可能不适合您。

我肯定会考虑将您可能需要以这种方式查询的任何数据分成不同的列。

另请注意,如果没有客户端应用程序,您将无法解释BLOB数据。

您始终要考虑报告。多年来,数据库通常最终会有多个客户端。