openresty利用插件lua-resty-moongoo操做mongodb (二)

1.mongodb的基本概念是文檔,集合,數據庫sql

2.文檔是一組鍵值(key-value)對即mongodb

3.moongoo方法數據庫

3.1新建一個moongoo實例數組

<moongoo_obj>mgobj, <string>error = moongoo.new(<string>connection_string)

local mg, err = moongoo.new("mongodb://user:password@hostname/?w=2")

3.2關閉mongodb鏈接(luasocket)或者把它放到鏈接池(openresty),若是發佈新的讀/寫命令時將會從新打開鏈接socket

mgobj:close()

3.3選擇能夠使用的數據庫dblua

<database> dbobj= mgobj:db(<string> name)

db = mg:db("test")

4.數據庫方法rest

4.1選擇一個可用的集合collectioncode

collection

<collection> colobj=dbobj:collection(<string>name)

col =db:collection("my_test")

4.2 gridfs對象

gridfs

<gridfs> gridfsobj= dbobj:gridfs(<optional string> prefix)

4.3 cmd 索引

運行數據庫命令,command有多是帶有命令名稱的字符串,參數是命令參數

<document>result,<string> error=dbobj:cmd(<string or table>command,<table>params)


local result,error=dbobj:cmd({distinct="some.collection"},{key="somekey"})

5.collection集合方法

5.1create 建立一個新的集合,返回新建的集合對象

<collection> new_colobj,<string>error=colobj:create(<string>name)

5.2 drop 刪除一個集合

<bool>result,<string>error=colobj:drop()

5.3 rename 重命名集合,若是存在,則刪除目標集合

<collection>new_colobj,<string>error=colobj:rename(<string>newname,<bool>drop)

5.4 options 返回集合屬性

<document>result,<string>error=colobj:options()

5.5 full_name 返回集合全稱

<string> result= colobj:full_name()

5.6stats 返回集合狀態狀況

<document>result,<string>error=colobj:stats()

5.7 index_infomation 返回集合索引信息

<document>result,<string>error=colobj:index_infomation()

5.8 ensure_index 新建一個索引,索引需爲數組,即便只有一個值。

<bool>result,<string>error=colobj:ensure_index(<array>indexes)

5.9 drop_index 刪除索引

<bool> result,<string>error=colobj:drop_index(<string>index)

5.10 find查詢

<cursor>cursorobj=colobj:find(<table or cbson.oid>query,<table>fields)

5.11 find_one

#返回符合條件的第一個文檔
<document>doc,<string>error =colobj:find_one(<table or cbson.oid>query,<table>fields)

5.12 find_and_modify

#根據opts修改文檔,返回舊文檔
<document>doc,<string>error=colobj:find_and_modify(<table or cbson.oid>query,<table>opts)

5.13 insert

#插入新的一個或多個文檔,返回插入的ids
相關文章
相關標籤/搜索