Erlang数据库-(二)Mnesia操作

Erlang数据库Mnesia操作详解
本文介绍了Erlang数据库Mnesia的操作,强调了脏操作(dirty)的无锁特性及内存表的速度优势,指出它们比普通表和使用transaction事务更快。详情可参阅相关链接。

直接来代码

%% 用到qlc的时候要导入这个东西!!!!!
-include_lib("stdlib/include/qlc.hrl").

% 普通表,用于测试dirty读写
-record(row1,{id = 0, a1 = 0, a2 = 0}).
% 普通表,用于测试transaction读写
-record(row2,{id = 0, a1 = 0, a2 = 0}).
% 内存表,用于测试dirty读写
-record(row3,{id = 0, a1 = 0, a2 = 0}).
% 内存表,用于测试transaction读写
-record(row4,{id = 0, a1 = 0, a2 = 0}).
  
% 初始化mnesia数据库
init() ->
	mnesia:create_schema([node()]),  
	mnesia:start(),
	%建立row1表,是普通表,用于测试dirty读写
	mnesia:create_table(row1, [{disc_only_copies, [node()]}, 
									{attributes, record_info(fields, row1)}]),
	%建立row2表,是普通表,用于测试transaction读写
	mnesia:create_table(row2, [{disc_only_copies, [node()]}, 
									{attributes, record_info(fields, row2)}]),
	%建立row3表,是内存表,用于测试dirty读写
	mnesia:create_table(row3, [{attributes, record_info(fields, row3)}]),
	%建立row4表,是内存表,用于测试transaction读写
	mnesia:create_table(row4, [{attributes, record_info(fields, row4)}]),
	ok.



                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值