MongoDB数据库的基本操作

今天一起来了解一下MongoDB数据库的基本操作,MongoDB是一种非关系型数据库,比较出名的关系型数据库应该是Mysql了,操作MongoDB数据库之前请确保已经安装了MongoDB数据库。安装教程可以看看下面的一篇文章:
http://www.runoob.com/mongodb/mongodb-window-install.html

  1. 首先我们开启Mongodb数据库,然后安装pymongo这个模块,这是python3中操作MongoDB数据库的模块,安装命令 pip install pymongo
  2. 启动了MongoDB数据库,我们新建一个py文件,首先我们需要引入pymongo这个模块,下面我来介绍MongoDB数据库的增删改查等操作。
    1. 向数据库插入数据
from pymongo import MongoClient

# 创建MongoDB连接对象

mg = MongoClient(host='127.0.0.1', port=27017)

# 获取数据库
students = mg.students
# 获取COLLECTION 相当于数据库中的表
stu = students.stu

# 向表中插入一条数据
# document 一条完整数据,是一个字典
stu.insert_one({'name': '张三', 'age':22})

data = [
    {
        'name':'赵四',
        'age':23,
        'sex':'男'
    },
    {
        'name':'刘能',
        'age':21,
        'sex':'男'
    }
]
# 向表中插入多条数据 documents [{},{},{},{}]
# 一个collection中的数据字段可以不同
stu.insert_many(data)

# 接收插入数据返回的结果
# 返回的是InsertOneResult类型的对象
# inserted_id 插入数据返回的id
rs = stu.insert_one({'name':'小王', 'age':25})
print(rs.inserted_id)

# 返回是一个列表,列表存放每一个插入数据的id
rs = stu.insert_many([{'name':'小李', 'age':25},{'name':'校长', 'age':20}])
#
print(rs.inserted_ids)
  1. 删除数据
# remove() 删除
rs = stu.remove({'name': '校长', 'age' :30})
print(rs)

3.更新数据

# 修改数据,修改一条数据,匹配第一条 ,覆盖操作
# rs = stu.update(spec={'name': '校长'}, document={'$set': data})
rs = stu.find_one({'name': '校长'})
rs['age'] = 30

# replace_one() 替换,可以指定替换某个字段的值
rs = stu.replace_one({'_id': rs['_id']}, rs)
print(rs)

# 修改符合条件的所有数据  # 覆盖操作
# $gt 小于   $gte小于等于
# $lt 大于   $lte大于等于
# $set 设置值  $inc 自增
# $match 匹配

# rs = stu.update_many(filter={'age':{'$gte':23}}, update={'$set': data})
#
# print(rs)

# 修改
# stu.replace()

  1. 查询数据
# 查找一条数据,直接返回的就是字典,没找到返回None
# rs = stu.find_one({'age': 30})
# print(rs)
data = {}
data['name'] = '修改后的校长'
data['age'] = 100
data['class'] = 'Python12'

好了,MongoDB就先写到这里,以后有涉及的将会继续增加内容

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值