ArangoDB文件操作

2021-10-02 10:35:33 字數 3224 閱讀 8053

通過arangodb提供的shell終端,我們可以執行很多文件集合操作,下面就看看一些常用的方法。

$ arangosh --server.username root --server.password  --server.database mydb

127.0.0.1:8529@mydb> db.users.insert(})

;127.0.0.1:8529@mydb> db.users.insert(})

;127.0.0.1:8529@mydb> db.users.insert(})

;127.0.0.1:8529@mydb> db.users.insert(})

;127.0.0.1:8529@mydb> db.users.insert(})

;127.0.0.1:8529@mydb> db.users.count();

5

all()方法可以返回集合的所有文件物件,我們可以對其使用limit()等函式來限制返回結果。

# 返回所有文件

db.users.all(

).toarray();

...# 返回前兩條結果

db.users.all(

).limit(2).toarray();

...

any()方法用來在集合中隨機返回乙個文件物件。

# 隨機返回乙個文件物件

db.users.any(

).toarray();

...

byexample()方法用來根據條件查詢文件物件。

# 查詢name=user3的物件集合

127.0.0.1:8529@mydb> db.users.byexample(

).toarray();

# 查詢name=user3並且age=30的物件集合

127.0.0.1:8529@mydb> db.users.byexample(

).toarray(

);

查詢結果也可以使用aql來遍歷

127.0.0.1:8529@mydb> var it = db.users.byexample();

...127.0.0.1:8529@mydb>

while

(it.hasnext(

)) print(it.next());

...

firstexample()方法用來返回查詢結果中的第乙個文件物件。

127.0.0.1:8529@mydb> db.users.firstexample(

"***", 1)

;...

document()方法用來根據_id或_key查詢文件物件。

# 按 _id 查詢

127.0.0.1:8529@mydb> db.users.document(

"users/16771");

...127.0.0.1:8529@mydb> db.users.document();

...# 按 _key 查詢

127.0.0.1:8529@mydb> db.users.document(

"16771");

...127.0.0.1:8529@mydb> db.users.document();

...# 查詢多個文件

127.0.0.1:8529@mydb> db.users.document(

["users/16764", "users/16771"])

;...

127.0.0.1:8529@mydb> db.users.document(

["16764", "16771"])

;...

127.0.0.1:8529@mydb> db.users.documents(

["16764", "16771"])

;...

exists()方法用來判斷文件是否存在,和document類似,可以按_id或_key來判斷。

127.0.0.1:8529@mydb> db.users.exists(

"users/16771");

127.0.0.1:8529@mydb> db.users.exists(

"16771");

127.0.0.1:8529@mydb> db.users.exists(

"12345");

false

如果存在返回物件,如果不存在返回false。

前面造測試資料的時候已經使用,這裡不再多說。

前面造測試資料的時候已經使用,這裡不再多說。

replace()方法用來替換已存在的文件物件。

127.0.0.1:8529@mydb> db.users.replace(

"users/16782", })

;127.0.0.1:8529@mydb> db.users.replace(

"16782", })

;

replace()方法也可以執行批量替換操作,語法如下:

update()方法用來替換文件中的一些屬性。

127.0.0.1:8529@mydb> db.users.update(

"users/16782", );

127.0.0.1:8529@mydb> db.users.update(

"16782", })

;

remove()方法用來按_id刪除文件物件,或者刪除乙個文件物件。

# 按 _id 刪除

127.0.0.1:8529@mydb> db.users.remove(

"users/16782");

# 按document刪除

127.0.0.1:8529@mydb> d = db.users.document(

"users/16782"

)127.0.0.1:8529@mydb> db.users.remove(d)

;

removebykeys()方法用來按_key刪除文件。

127.0.0.1:8529@mydb> db.users.removebykeys(

["16775", "19465"])

arangoDB安裝教程

部署環境 linux redhat6.5 rpm安裝包rpm ivh arangodb3 3.4.1 1.0.x86 64.rpm執行arango secure installation後,提示輸入root密碼 為了能在區域網中訪問web介面,修改配置檔案 etc arangodb3 arangod...

ArangoDB 儲存引擎(RocksDB)

儲存引擎位於arangodb資料庫的最底層。儲存引擎負責將文件儲存在磁碟上,在記憶體中儲存副本,提供索引和快取以加快查詢速度。3.1版本之前,arangodb僅支援記憶體對映檔案 mmfiles 作為唯一的儲存引擎。從3.2之後,arangodb開始支援可插拔的儲存引擎。第二個支援的引擎是來自fac...

ArangoDB(二) AQL語句使用

一 arangodb基本單元collections相當於傳統資料庫的表,collections有兩種型別 不要和資料document混淆 1 document collection圖的節點 2 edge collection圖的邊 和document型別相比,多出 from和 to屬性,表示兩個do...