Database design 在单个表中存储不同的参数类型

Database design 在单个表中存储不同的参数类型,database-design,Database Design,我有一个Java类,表示一个包含一些数据的事件,还有一个不同类型的“参数”列表,因为没有更好的词。我想把它保存到数据库中,但我不知道最好的方法是什么 编辑以澄清我的胡言乱语: 根据“事件”的类型,它可能包含主机名、端口、日期、服务名称、消息时间、证书摘要(字节数组)等参数 我想最接近的并行方法应该是存储printf格式的字符串和参数(尽管我不是这么做的)。存储格式字符串很容易,但存储参数却很棘手,因为检索时需要将它们恢复为原始类型 我试图找出一种方法来存储各种类型的参数。我是否应该将它们编码为某

我有一个Java类,表示一个包含一些数据的事件,还有一个不同类型的“参数”列表,因为没有更好的词。我想把它保存到数据库中,但我不知道最好的方法是什么

编辑以澄清我的胡言乱语:

根据“事件”的类型,它可能包含主机名、端口、日期、服务名称、消息时间、证书摘要(字节数组)等参数

我想最接近的并行方法应该是存储printf格式的字符串和参数(尽管我不是这么做的)。存储格式字符串很容易,但存储参数却很棘手,因为检索时需要将它们恢复为原始类型


我试图找出一种方法来存储各种类型的参数。我是否应该将它们编码为某种字符串格式,并将它们填充到varchar()中,然后在检索事件的参数时进行解码?

以varchar/string的形式存储所有内容在我看来是个坏主意。如果需要在数据库中存储各种数据类型,请使用正确的类型存储它们。这样,您的表示层可以处理格式设置。

那么,您有什么建议?不同参数类型的单独表格?问题是,我将有不同类型的数据与同一事件关联。我不知道除了将类型信息编码为“通用”格式,然后在检索时解码之外,还有什么可以保存类型信息。@sdeer-您能编辑您的原始问题并添加信息以帮助我们了解当前的情况吗?到目前为止,对于我来说,您正在寻找某种EAV(实体属性值),但是对于数据类型,这听起来并不正确。那么,您是说您将始终拥有相同数量的参数,但它们的类型将不同吗?