python提取数据库nosql_Python NoSQL数据库

随着越来越多的数据以非结构化或半结构化的方式提供,需要通过NoSql数据库来管理它们。Python也可以以与关系数据库交互的相似方式与NoSQL数据库进行交互。在本章中,我们将使用python作为NoSQL数据库与MongoDB进行交互。

为了连接到MongoDB,python使用一个名为 pymongo 的库。您可以使用Anaconda环境中的以下命令将此库添加到您的python环境。

conda install pymongo

这个库允许python使用数据库客户端连接到MOngoDB。一旦连接,我们选择要用于各种操作的数据库名称。

插入数据

为了将数据插入到MongoDB中,我们使用数据库环境中可用的insert()方法。首先我们使用下面显示的Python代码连接到数据库,然后我们以一系列键值对的形式提供文档详细信息。

# Import the python libraries

from pymongo import MongoClient

from pprint import pprint

# Choose the appropriate client

client = MongoClient()

# Connect to the test db

db=client.test

# Use the employee collection

employee = db.employee

employee_details = {

'Name': 'Raj Kumar',

'Address': 'Sears Streer, NZ',

'Age': '42'

}

# Use the insert method

result = employee.insert_one(employee_details)

# Query for the inserted document.

Queryresult = employee.find_one({'Age': '42'})

pprint(Queryresult)

当我们执行上面的代码时,它会产生以下结果。

{u'Address': u'Sears Streer, NZ',

u'Age': u'42',

u'Name': u'Raj Kumar',

u'_id': ObjectId('5adc5a9f84e7cd3940399f93')}

更新数据

更新现有的MongoDB数据与插入类似。我们使用mongoDB原生的update()方法。在下面的代码中,我们用新的键值对替换了现有的记录。请注意我们如何使用条件标准来决定更新哪条记录。

# Import the python libraries

from pymongo import MongoClient

from pprint import pprint

# Choose the appropriate client

client = MongoClient()

# Connect to db

db=client.test

employee = db.employee

# Use the condition to choose the record

# and use the update method

db.employee.update_one(

{"Age":'42'},

{

"$set": {

"Name":"Srinidhi",

"Age":'35',

"Address":"New Omsk, WC"

}

}

)

Queryresult = employee.find_one({'Age':'35'})

pprint(Queryresult)

当我们执行上面的代码时,它会产生以下结果。

{u'Address': u'New Omsk, WC',

u'Age': u'35',

u'Name': u'Srinidhi',

u'_id': ObjectId('5adc5a9f84e7cd3940399f93')}

删除数据

在我们使用删除方法的地方删除记录也很简单。这里我们还提到用于选择要删除的记录的条件。

# Import the python libraries

from pymongo import MongoClient

from pprint import pprint

# Choose the appropriate client

client = MongoClient()

# Connect to db

db=client.test

employee = db.employee

# Use the condition to choose the record

# and use the delete method

db.employee.delete_one({"Age":'35'})

Queryresult = employee.find_one({'Age':'35'})

pprint(Queryresult)

当我们执行上面的代码时,它会产生以下结果。

None

所以我们看到特定的记录不再存在于db中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值