erlang connect to mongodb
一
安装好mongodb,然后启动(具本不介绍了)
二
下载erlang connect to mongodb driver, and bson driver(输助包,定义文档类型和二进制实现)
三 解压 erlc -o ebin -I include src/*.erl
erlc -o ebin -I include -I .. src/*.erl
四 添加到erlang运行环境
erl -pa bson/ebin mongodb/ebin
五
开始服务
application:start (mongodb).
六
建立连接
{ok, Conn} = mongo:connect ({localhost, 27017}).%% 27017 is the default port of mongodb
七开始进行相关操作
mongo:do (safe, master, Conn, test, fun() ->
mongo:delete (foo, {}),
mongo:insert (foo, {x,1, y,2}),
mongo:find (foo, {x,1}) end).
首先解释一下上面那此变量的意义
1 safe:写模式,save(safe, GetLastErrorParams})要求每次操作之后需要确认服务器返回正确,如果服务器返回失败则会终止接下来的操作,并报错,与之相关的是unsave它不需要每一次操作都确认服务器有误,这种模式下相对save没延时,但是不安全
2 master: slave_ok:读模式:如果是master表示只能从主数据库读取数据,否则会报错,但是如果是slave_ok,表示主从数据库都OK
3 Conn:这个自然是我们的连接了(由步骤六获得)
4 test:mongodb中的数据库名称
5 foo
集合名称
八,讲解一下怎么获取查询后的结果
mongo:do (safe, master, Conn, test, fun() ->mongo:find(foo,{name:dxm}) end).
lang
connect to mongodb driver, and bson driver
返回{ok,Cursor}|…
然后可以用mongo:next(Cursor),mongo:rest(Cursor),mongo: close_cursor(Cursor)分别获取下一个结果,剩下所有结果,关闭游标
其它就不多说了,大家可以自己看 mongo.erl源码,呵呵
上面是看了那个官方文档翻译的。
分享到:
相关推荐
{ok, Pid} = mongodb:connect({host, "localhost"}, {database, "test"}). % 插入文档 Doc = #{<<"name">> => <<"John">>, <<"age">> => 30}, {ok, _} = mongodb:insert(Pid, "users", [Doc]). % 查询文档 Query =...
《远古封神Server:基于Erlang的服务器架构与MongoDB数据库集成解析》 本文将深入探讨"远古封神Server"项目,这是一个采用Erlang编程语言构建的游戏服务器,搭配MongoDB数据库来实现高效的数据存储和处理。Erlang以...
emongo 是另外一个 MongoDB 的 Erlang 开发包,已经多年没更新。示例代码:%% find documents where field1 is greater than 5 and less than 10 emongo:find(test, "collection", [{"field1", [{gt,...
这是Erlang的MongoDB驱动程序。 用法将此仓库添加为依赖项:钢筋{deps,[{mongodb,“。*”,{git,“ git://github.com/comtihon/mongodb-erlang”,{标签,“ <最新标签>”} }}]} Erlang.mk DEPS = mon这是...
- **概念介绍**:Turbo Erlang是一种高效的Erlang实现方案,能够将Erlang程序编译成C语言代码,从而接近甚至达到C语言级别的性能。 - **实现原理**:通过高度优化的编译技术和运行时环境,Turbo Erlang能够显著提高...
标题中的“<27>erlang record”可能指的是Erlang编程语言中的Record特性,它是一种数据结构,类似于结构体或者哈希表,用于组织和操作数据。在Erlang中,Record提供了一种方便的方式来定义和访问具有固定字段的数据...
《远古封神Server:基于Erlang与MongoDB的游戏后端架构解析》 在游戏开发领域,服务器架构的设计是至关重要的,它直接决定了游戏的性能、稳定性和可扩展性。"远古封神Server"是一款基于Erlang语言开发的游戏服务器...
erlang提供了binary_to_term 函数,用于把二进制数据转为原始的erlang数据。这个函数都是c实现的,这里用erlang语言实现了,很有参考价值,其他语言可以参考这个解析erlang二进制协议数据。配套文章地址...
This package contains the Erlang/OTP runtime implementation, which is configured and built with HiPE support (allows compiling to native code), and minimal set of Erlang applications: compiler - ...
**Erlang编程:Introducing Erlang** Erlang是一种函数式编程语言,由爱立信在1986年开发,主要用于构建高可用性、容错性和并发性的分布式系统。"Introducing Erlang"是Simon St. Laurent撰写的一本入门级教程,...
OpenSSL 3 support in Erlang is considered to be mature and ready for production use. Erlang 26.1 and later versions supports FIPS mode on OpenSSL 3 3.12.13 3.12.12 3.12.11 3.12.10 25.0 26.2.x The ...
MongoDB提供多语言驱动支持,包括Ruby/Ruby-on-Rails、Java、C#、JavaScript、C/C++、Erlang、Python、Perl等。 5. MongoDB的优势: MongoDB不需要额外的缓存,支持丰富的查询和数据类型,同时商业公司10gen提供...
Erlang是一种高级编程语言,特别适用于并发、分布式和实时系统。它由Ericsson公司开发,主要用于构建高可用性、容错性和可扩展性的软实时系统。Erlang的25.0版本是该语言的一个更新,针对Windows操作系统进行了优化...
Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson开发,主要用于构建高可用性、分布式和实时系统。版本24.3.4.4是Erlang的一个更新版本,包含了对先前版本的改进和修复。Erlang以其强大的错误...
* 数据库层:使用Erlang的ETS、Mnesia、MySQL、MongoDB等数据库来存储游戏数据。 游戏服务器实现 在实现游戏服务器时,我们需要考虑以下几个方面: * 玩家和NPC的进程模型:使用Erlang的轻量级进程来模拟玩家和...
"cpp-mongodberlangErlang的MongoDB驱动器" 这个标题表明我们讨论的是一个Erlang编程语言中的MongoDB驱动程序,它用于连接和操作MongoDB数据库。"cpp"可能指的是C++,因为有时在编程社区中,cpp可以作为C++的简称,...
echo 'export PATH=$PATH:/path/to/erlang/bin' >> ~/.bashrc source ~/.bashrc ``` 5. **验证安装**:最后,通过运行`erl`命令检查Erlang是否成功安装。 ```bash erl ``` 一旦Erlang安装成功,就可以继续...
Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson为了实现分布式实时、高可靠性系统而开发。Erlang以其强大的并行处理能力、容错性和易于构建大规模分布式系统的特点,在电信、金融和互联网等...
这个“erlang资源”包含两本PDF书籍——《Erlang并发编程》和《Erlang入门手册》,它们是深入理解和学习Erlang语言的关键资料。 《Erlang并发编程》这本书可能涵盖了以下知识点: 1. **并发模型**:Erlang的并发...
Erlang/OTP 26.2.1,Erlang,OTP,26.2.1