0

ets:lookup_element(Tab, Key, Pos) 的 mnesia 等价物是什么?我正在努力使用手册页和 mnesia 教程找到它。

4

2 回答 2

2

我会在 mnesia http://www.erlang.org/doc/man/mnesia.html#match_object-3中使用 match_object(Tab, Pattern, LockKind) 。

于 2012-11-05T10:35:21.217 回答
0

如果你只想要那个位置,那么你就无法避免qlc:q/1。查询列表理解是唯一可以让您操纵 mnesia 如何为您提供结果的读取方法。

-include_lib("stdlib/include/qlc.hrl")。
选择(Q)-> 案例记忆:is_transaction() 的 假-> F = fun(QH)-> qlc:e(QH) 结束, %% 失忆症:交易(F); mnesia:activity(transaction,F,[Q],mnesia_frag); 真-> qlc:e(Q) 结尾。
-记录(书,{标题,​​isbn,价格,类别})。
book_title({book,ISBN})-> select(qlc:q([X#book.title || X <- mnesia:table(book),X#book.isbn == ISBN]))。

请参阅此问题及其答案

于 2012-11-05T13:37:16.883 回答