当前位置:   article > 正文

ArangoDB集合操作_arangosh

arangosh

通常我们可以通过 ArangoDB 提供的 Web 接口来对 ArangoDB 进行监控和管理。但今天来看看怎样通过 arangosh 的方式来对数据库进行操作。

连接数据库

首先通过 arangosh 命令来进入 arangodb 的 shell 终端。

$ arangosh
  • 1

进入 shell 终端后,可以通过输入 help 来查看帮助。

ArangoDB 中的数据库操作都是通过 db.xxx 命令来实现的,在 shell 命令提示符下输入 db. 然后按 Tab 键,系统会提示可以使用的函数列表。

# 查看当前有哪些数据库
127.0.0.1:8529@_system> db._databases();
[ 
  "_system"
]

# 查看当前数据库名
127.0.0.1:8529@_system> db._name();
_system

127.0.0.1:8529@_system> db.toString();
[object ArangoDatabase "_system"]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

上面的操作会登录默认的数据库 “_system”,也可以通过指定数据库名来直接使用指定的数据库,比如:

arangosh --server.username root --server.password <password> --server.database mydb
  • 1

数据库操作

# 创建数据库
127.0.0.1:8529@_system> db._createDatabase("mydb");
true

# 查看数据库
127.0.0.1:8529@_system> db._databases();
[ 
  "_system", 
  "mydb" 
]

# 切换使用新创建的数据库
127.0.0.1:8529@_system> db._useDatabase("mydb");
true

127.0.0.1:8529@mydb> db._name();
mydb

127.0.0.1:8529@mydb> db._useDatabase("_system");
true

# 删除数据库
127.0.0.1:8529@_system> db._dropDatabase("mydb");
true
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

集合操作

创建集合

127.0.0.1:8529@mydb> db._create("mycollection");
[ArangoCollection 10139, "mycollection" (type document, status loaded)]
  • 1
  • 2

写入数据

集合一旦创建好,就可以 db.mycollection. + Tab 来查看可以有哪些对集合的操作了。

127.0.0.1:8529@mydb> db.mycollection.save({ _key: "mykey1", value : "myvalue1" });
{ 
  "_id" : "mycollection/mykey1", 
  "_key" : "mykey1", 
  "_rev" : "_Z8uG62W---" 
}

127.0.0.1:8529@mydb> db.mycollection.save({ _key: "mykey2", value : "myvalue2" });
{ 
  "_id" : "mycollection/mykey2", 
  "_key" : "mykey2", 
  "_rev" : "_Z8uG62e---" 
}

127.0.0.1:8529@mydb> db.mycollection.save({ _key: "mykey3", value : "myvalue3" });
{ 
  "_id" : "mycollection/mykey3", 
  "_key" : "mykey3", 
  "_rev" : "_Z8uG7vO---" 
}

127.0.0.1:8529@mydb> db.mycollection.save({ col1: "column1", col2 : "column2", col3: "column3" });
{ 
  "_id" : "mycollection/13352", 
  "_key" : "13352", 
  "_rev" : "_Z8uuVAG---" 
}

# 查看一下集合数
127.0.0.1:8529@mydb> db.mycollection.count();
4
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

查询集合

127.0.0.1:8529@mydb> db._query('FOR my IN mycollection RETURN my._key').toArray();
[ 
  "13352",
  "mykey1", 
  "mykey2", 
  "mykey3" 
]

127.0.0.1:8529@mydb> db._query('FOR my IN mycollection RETURN my').toArray();
[ 
  { 
    "_key" : "mykey1", 
    "_id" : "mycollection/mykey1", 
    "_rev" : "_Z8uG62W---", 
    "value" : "myvalue1" 
  }, 
  { 
    "_key" : "mykey2", 
    "_id" : "mycollection/mykey2", 
    "_rev" : "_Z8uG62e---", 
    "value" : "myvalue2" 
  }, 
  { 
    "_key" : "mykey3", 
    "_id" : "mycollection/mykey3", 
    "_rev" : "_Z8uG7vO---", 
    "value" : "myvalue3" 
  } ,
  { 
    "_key" : "13352", 
    "_id" : "mycollection/13352", 
    "_rev" : "_Z8uuVAG---", 
    "col1" : "column1", 
    "col2" : "column2", 
    "col3" : "column3" 
  } 
]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37

使用 Filter 过滤查询

127.0.0.1:8529@mydb> db._query('FOR my IN mycollection FILTER my._key == "mykey1" RETURN my').toArray();
[ 
  { 
    "_key" : "mykey1", 
    "_id" : "mycollection/mykey1", 
    "_rev" : "_Z8uG62W---", 
    "value" : "myvalue1" 
  } 
]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

删除集合数据

127.0.0.1:8529@mydb> db.mycollection.remove({_key: "mykey1"});
{ 
  "_id" : "mycollection/mykey1", 
  "_key" : "mykey1", 
  "_rev" : "_Z8uU7Eq---" 
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

删除集合

127.0.0.1:8529@mydb> db.mycollection.drop();
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/706303
推荐阅读
相关标签
  

闽ICP备14008679号