系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 数据库 > 其它 > 详细页面

使用Python操作ArangoDB的方法步骤

时间:2020-02-02来源:系统城作者:电脑系统城

前面说过怎样使用 ArangoDB 的 Web,Shell 和 Restful API 来操作数据库,今天看一下怎样使用Python语言来操作ArangoDB数据库。

要通过 Python 脚本来访问 ArangoDB,我们需要先安装 pyArango 库


 
  1. $ pip install pyArango

下面写了一个简单的 Python 脚本,其中包含了一些常用的操作,如:创建连接,数据库操作,集合操作和文档操作等。


 
  1. from pyArango.connection import *
  2.  
  3.  
  4. # 创建连接
  5. conn = Connection(arangoURL='http://106.54.228.237:8529', username="root",password="Letmein")
  6. print('conn: %s' % conn)
  7.  
  8. # 创建数据库
  9. if not conn.hasDatabase('mydb'):
  10. conn.createDatabase(name="mydb")
  11.  
  12. db = conn['mydb']
  13. print('db: %s' % db)
  14.  
  15. # 创建集合
  16. if not db.hasCollection('users'):
  17. db.createCollection(name='users')
  18.  
  19. collection = db['users']
  20. print('collection: %s' % collection)
  21.  
  22. # 插入文档数据
  23. print('collection count before insert: %s' % collection.count())
  24. for i in range(0, 10):
  25. user = {
  26. 'name': 'user_' + str(i),
  27. 'age': 20 + i,
  28. 'address': {
  29. 'home': 'home address',
  30. 'office': 'office address'
  31. }
  32. }
  33. collection.createDocument(user).save()
  34. print('collection count after insert: %s' % collection.count())
  35.  
  36. # 分页查询文档
  37. print('fetchAll ...')
  38. query = collection.fetchAll(skip=5, limit=2)
  39. for doc in query:
  40. print(doc)
  41.  
  42. # 按条件查询文档
  43. print('fetchByExample ...')
  44. query = collection.fetchByExample({'name': 'user_5'}, batchSize=10, count=True)
  45. for doc in query:
  46. print(doc)
  47.  
  48. # 使用AQL查询文档
  49. print('query by AQL ...')
  50. aql = "FOR user IN users FILTER user.name == @name || user.age > 25 LIMIT 5 RETURN user"
  51. bindVars = {'name': 'user_0'}
  52. query = db.AQLQuery(aql, rawResults=False, batchSize=1, bindVars=bindVars)
  53. for doc in query:
  54. print(doc)
  55.  
  56. # 删除文档
  57. print('collection count before delete: %s' % collection.count())
  58. query = collection.fetchAll()
  59. for doc in query:
  60. doc.delete()
  61. print('collection count after delete: %s' % collection.count())
  62.  
  63. # 删除集合
  64. collection.delete()
  65.  

参考文档

https://pyarango.readthedocs.io/en/stable/

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

分享到:

相关信息

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载