【问题标题】:reading mnesia tables where key is a tuple and the search criteria contains '_' underscores读取键是元组且搜索条件包含“_”下划线的记忆表
【发布时间】:2010-12-19 00:57:13
【问题描述】:

我有一个第 3 或第 4 个范式 mnesia 数据库,所讨论的表应该是键/值散列,但是,架构师将键和值放在记录的键部分。

它看起来像:

-record(idx,{key,value}).
...
Invoice = 1,
Date = now(),
K1 = {?NORMAL_TYPE1,Invoice,Date},
mnesia:write(#idx{key=K1}).
...

所以问题是......如果我只知道发票编号,我是否仍然可以同时从数据库中获取数据,就好像发票是唯一的键而不是元组一样?

K2 = {?NORMAL_TYPE1,Invoice,'_'},
Rec = mnesia:read(#idx{key=K2}).

【问题讨论】:

    标签: erlang mnesia


    【解决方案1】:

    简短的回答:不。

    更长的答案:如果表是 orderet_set 或类似的东西,你可能会有机会,但我不会指望它。

    旁白:记忆力通常不会太有效。标准化数据。通常最好使用标准的 RDBMS 系统。

    【讨论】:

      【解决方案2】:

      您可以使用mnesia:match_object/1/3mnesia:select/2/3/4/1 提供一个模式,其中可以包含'_' 作为无关 变量。我想这就是你的意思。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-05-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多