【发布时间】:2012-03-22 00:36:24
【问题描述】:
我的代码有点问题。我有一个包含汽车详细信息、名称、价格和数量的表格,因此我正在尝试创建一个名为 buy 的函数,该函数将用于购买特定汽车。当用户购买例如 5 辆宝马汽车时,他们会拨打buy_car(bmw,5)。现在,我想更新 BMW 汽车的新数量值。
我的尝试如下,但我似乎无法解决它,我是 Erlang 的新手。
buy_car(X,Ncars) ->
F = fun() ->
%% ----first i find the number of car X available in the shop
[Xcars] = mnesia:read({car,X}),
Nc = Xcars#car.quantity,
Leftcars = Xcars#car{quantity = Nc - Ncars},
%% ---now we update the database
mnesia:write(Leftcars),
end,
mnesia:transaction(F).
请帮助我编写一个从商店购买汽车的函数。
【问题讨论】:
标签: database transactions erlang mnesia