`
dxm1986
  • 浏览: 435098 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

erlang connect to mongodb

阅读更多

 

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源码,呵呵

上面是看了那个官方文档翻译的。

分享到:
评论

相关推荐

    mongodb-erlang:Erlang的MongoDB驱动程序

    {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数据库集成解析》 本文将深入探讨"远古封神Server"项目,这是一个采用Erlang编程语言构建的游戏服务器,搭配MongoDB数据库来实现高效的数据存储和处理。Erlang以...

    MongoDB的Erlang开发包emongo.zip

    emongo 是另外一个 MongoDB 的 Erlang 开发包,已经多年没更新。示例代码:%% find documents where field1 is greater than 5 and less than 10 emongo:find(test, "collection", [{"field1", [{gt,...

    适用于Erlang的MongoDB驱动程序-C/C++开发

    这是Erlang的MongoDB驱动程序。 用法将此仓库添加为依赖项:钢筋{deps,[{mongodb,“。*”,{git,“ git://github.com/comtihon/mongodb-erlang”,{标签,“ <最新标签>”} }}]} Erlang.mk DEPS = mon这是...

    Erlang_to_C

    - **概念介绍**:Turbo Erlang是一种高效的Erlang实现方案,能够将Erlang程序编译成C语言代码,从而接近甚至达到C语言级别的性能。 - **实现原理**:通过高度优化的编译技术和运行时环境,Turbo Erlang能够显著提高...

    <27>erlang record

    标题中的“&lt;27&gt;erlang record”可能指的是Erlang编程语言中的Record特性,它是一种数据结构,类似于结构体或者哈希表,用于组织和操作数据。在Erlang中,Record提供了一种方便的方式来定义和访问具有固定字段的数据...

    远古封神Server(erlang源码)

    《远古封神Server:基于Erlang与MongoDB的游戏后端架构解析》 在游戏开发领域,服务器架构的设计是至关重要的,它直接决定了游戏的性能、稳定性和可扩展性。"远古封神Server"是一款基于Erlang语言开发的游戏服务器...

    erlang语言实现binary_to_term完整代码

    erlang提供了binary_to_term 函数,用于把二进制数据转为原始的erlang数据。这个函数都是c实现的,这里用erlang语言实现了,很有参考价值,其他语言可以参考这个解析erlang二进制协议数据。配套文章地址...

    可在ubuntu上安装erlang的deb包

    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编程:Introducing Erlang** Erlang是一种函数式编程语言,由爱立信在1986年开发,主要用于构建高可用性、容错性和并发性的分布式系统。"Introducing Erlang"是Simon St. Laurent撰写的一本入门级教程,...

    Erlang26-windows安装包

    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简介与实践.pdf

    MongoDB提供多语言驱动支持,包括Ruby/Ruby-on-Rails、Java、C#、JavaScript、C/C++、Erlang、Python、Perl等。 5. MongoDB的优势: MongoDB不需要额外的缓存,支持丰富的查询和数据类型,同时商业公司10gen提供...

    erlang25.0 windows版本

    Erlang是一种高级编程语言,特别适用于并发、分布式和实时系统。它由Ericsson公司开发,主要用于构建高可用性、容错性和可扩展性的软实时系统。Erlang的25.0版本是该语言的一个更新,针对Windows操作系统进行了优化...

    erlang_版本24.3.4.4

    Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson开发,主要用于构建高可用性、分布式和实时系统。版本24.3.4.4是Erlang的一个更新版本,包含了对先前版本的改进和修复。Erlang以其强大的错误...

    Erlang-game-server开发实践.pdf

    * 数据库层:使用Erlang的ETS、Mnesia、MySQL、MongoDB等数据库来存储游戏数据。 游戏服务器实现 在实现游戏服务器时,我们需要考虑以下几个方面: * 玩家和NPC的进程模型:使用Erlang的轻量级进程来模拟玩家和...

    cpp-mongodberlangErlang的MongoDB驱动器

    "cpp-mongodberlangErlang的MongoDB驱动器" 这个标题表明我们讨论的是一个Erlang编程语言中的MongoDB驱动程序,它用于连接和操作MongoDB数据库。"cpp"可能指的是C++,因为有时在编程社区中,cpp可以作为C++的简称,...

    Erlang 20.3linux安装包

    echo 'export PATH=$PATH:/path/to/erlang/bin' &gt;&gt; ~/.bashrc source ~/.bashrc ``` 5. **验证安装**:最后,通过运行`erl`命令检查Erlang是否成功安装。 ```bash erl ``` 一旦Erlang安装成功,就可以继续...

    erlang22最新下载包

    Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson为了实现分布式实时、高可靠性系统而开发。Erlang以其强大的并行处理能力、容错性和易于构建大规模分布式系统的特点,在电信、金融和互联网等...

    erlang资源

    这个“erlang资源”包含两本PDF书籍——《Erlang并发编程》和《Erlang入门手册》,它们是深入理解和学习Erlang语言的关键资料。 《Erlang并发编程》这本书可能涵盖了以下知识点: 1. **并发模型**:Erlang的并发...

    Erlang/OTP 26.2.1

    Erlang/OTP 26.2.1,Erlang,OTP,26.2.1

Global site tag (gtag.js) - Google Analytics