初识python 之 MongoDB 基本操作
MongoDB与SQL对比:

MongoDB 三元素:数据库、集合、文档
MongoDB 基本操作命令:
db 查看当前数据库
show dbs 查看所有数据库
use 数据库名 切换数据库,如果数据库不存在则创建(添加数据之后才会真正存在
db.dropDabase() 删除当前数据库
db.集合名.insert(要插入的数据) 添加数据到指定的集合中 db.user.insert({'id':1,'name':'lzh'}))
db.集合名.find() 从指定集合中查找数据 db.user.find()
python操作MongoDB
需要导入pymongo包:import pymongo
获取连接mongodb的对象:
client = pymongo.MongoClient('127.0.0.1',port=27017)
获取数据库,如果没有这个数据库,会自动创建,若未插入数据,不会真正创建:
db = client.lzhdb
获取数据库的集合,及mysql数据库中的表:
collection = db.user
写入数据:
插入一条数据:
collection.insert({'id':1,'name':'lzh'}) # 等价于 collection.insert_one({'id':1,'name':'lzh'})
插入多条数据:
collection.insert_many([
{
'id':4,
'name':'lzh1'
},
{
'id':5,
'name':'lzh1'
}
])
查找数据:
获取集合中的所有数据:
cursor = collection.find()
for i in cursor:
print(i)
获取集合中的第一条数据:
result = collection.find_one()
print(result)
获取集合中满足条件的一条数据:获取ID=2的一条数据
result2 = collection.find_one({'id':2})
print(result2)
更新数据:
更新一条数据:
collection.update_one({'id':5},{'$set':{'name':'lzh1'}})
更新多条数据:将所有name='lzh1'的改成name='lzh'
collection.update_many({'name':'lzh1'},{'$set':{'name':'lzh'}})
删除数据:
删除一条数据:删除name='lzh'的一条数据
collection.delete_one({'name':'lzh'})
删除多条数据:删除name='lzh'的所有数据
collection.delete_many({'name':'lzh'})
初识python 之 MongoDB 基本操作的更多相关文章
- python操作三大主流数据库(7)python操作mongodb数据库①mongodb的安装和简单使用
python操作mongodb数据库①mongodb的安装和简单使用 参考文档:中文版:http://www.mongoing.com/docs/crud.html英文版:https://docs.m ...
- @1-2初识Python爬虫
初识Python爬虫 Python爬虫(入门+进阶) DC学院 环境搭建: Python2与Python3的差异:python2与python3整体差异不大,大多是一些语法上的区别,考虑到py ...
- Python 驱动 MongoDB 示例(PyMongo)
Python 的MongoDB驱动 pymongo ,使用pip Install pymongo安装即可 最近发现网上的很多实例已经过时了,在此自我探究记录下来. 编写一个接口类来支持MongoDB的 ...
- 【MongoDB详细使用教程】二、MongoDB基本操作
目录 数据类型 数据库操作 集合操作 数据操作 增 查 改 修改整行 修改指定字段的值 删 数据类型 MongoDB常见类型 说明 Object ID 文档ID String 字符串,最常用,必须是有 ...
- 【MongoDB详细使用教程】四、python操作MongoDB
目录 1.安装pymongo 2.连接数据库 3.操作数据库 3.1.查 3.2.增 3.3.改 3.4.删 使用第三方库pymongo来实现python对MongoDB的操作 pymongo官方文档 ...
- Python导出Excel为Lua/Json/Xml实例教程(一):初识Python
Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...
- Python开发【第一篇】:初识Python
初识python 一.python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解 ...
- Python 操作 mongodb 数据库
原文地址:https://serholiu.com/python-mongodb 这几天在学习Python Web开发,于 是做准备做一个博客来练练手,当然,只是练手的,博客界有WordPress这样 ...
- Python开发【第二篇】:初识Python
Python开发[第二篇]:初识Python Python简介 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏 ...
随机推荐
- 【Java 基础】Java动态代理
Java动态代理InvocationHandler和Proxy java动态代理机制中有两个重要的类和接口InvocationHandler(接口)和Proxy(类),这一个类Proxy和接口Invo ...
- 机器学习——sklearn中的API
import matplotlib.pyplot as pltfrom sklearn.svm import SVCfrom sklearn.model_selection import Strati ...
- Netty 编解码奥秘
Netty中编解码 Netty 的解码器有很多种,比如基于长度的,基于分割符的,私有协议的.但是,总体的思路都是一致的. 拆包思路:当数据满足了 解码条件时,将其拆开.放到数组.然后发送到业务 han ...
- 网络访问控制列表ACL(读懂这篇就基本够了,后面有配置案例)
一.访问控制列表是什么? 访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃.访问控制列表被广泛地应用于路由器和三层交换机,借助于访问 ...
- Gitlab-CICD实践篇
一.背景 随着公司项目使用gitlab越来越多,业务发布的次数越来越频繁,对于发布效率提出了更高的要求.从2012开始,Gitlab官方开始集成了Continuous Integration (CI) ...
- 【划重点】Python matplotlib绘图设置坐标轴的刻度
一.语法简介 plt.xticks(ticks,labels,rotation=30,fontsize=10,color='red',fontweight='bold',backgroundcolor ...
- List.Sum…统计信息(Power Query 之 M 语言)
数据源: 任意数据源,一列数值,一列非数值(文本) 目标: 对数值列进行求和等计算,对非数值列进行计数等计算 操作过程: 选取待计算的列>[转换]>[统计信息]>选取 M公式: ...
- Table.NestedJoin合并…Join(Power Query 之 M 语言)
数据源: "销量表"和"部门表"两个查找表,每个表中都有"姓名"列 目标: 根据"姓名列"将"部门表" ...
- 韩顺平JDBC学习笔记
第一节 JDBC概述 1.1 JDBC原理图 Java不可能具体地去操作数据库,因为数据库有许多种,直接操作数据库是一种很低效且复杂的过程. 因此,Java引入JDBC,规定一套操作数据库的接口规范, ...
- java 多线程 读写互斥锁ReentrantReadWriteLock:读读不互斥,读写互斥,写写互斥
ReentrantReadWriteLock: 类ReentrantLock具有相互互斥的排他效果,也就是说,同一时间,只有一个线程执行lock()方法后面的任务.这样做虽然可以解决问题,但是效率非常 ...