博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
09 mongoDB基础(进阶)
阅读量:4545 次
发布时间:2019-06-08

本文共 2873 字,大约阅读时间需要 9 分钟。

mongoDB基础

阶段一、认识mongodb

1、mongodb 组织数据的基本形式

MongoDB————》数据库————》集合————》文档

mysql:表:行和列:字段

运用场景:如 送外卖骑手的实时信息、日志、游戏人物属性、微信附近人信息

运用特征:实时变化的 QPS

数据类型:每个文档以键值对的形式储存

2、进入与退出 数据库

进入:mongo

退出:exit

阶段二、库,集合操作

1、显示所有库:shou dbs

2、切换数据库:use 数据库名称

3、查看所在库:db

4、删除库:db.dropDatabase()

5、查看当前库里面的集合:show collections

6、创建集合:db.createCollection('student')

7、删除集合:db.集合名称.drop()

阶段三、数据的增删改查操作

1、插入数据

db.集合名称.insert(document)

每一条数据,就是一个document,即 就是一条json

插入文档时,如果不指定_id参数,MongoDB会为文档分配一个唯一的ObjectId

# 例:插入一条db.student.insert({name:‘shiwei',age:18})# 插入时加入iddb.student.insert({_id:10,name:‘shiwei',age:18})​# 插入多条:db.student.insert([    {name:‘shiwei',sex:'male',age:18},    {name:'张三',sex:’female',age:30 },    {name:'李四',sex:’male',age:48 },])
2、查询数据

db.集合名称.find()

# 查询所有:db.student.find()# 查询所有、格式会缩进:db.student.find().pretty()# 按条件查询:> db.student.find({name:'zcm'}){ "_id" : ObjectId("5b3789beccd791f53ba27b05"), "name" : "zcm", "age" : 22 }{ "_id" : ObjectId("5b378bc6ccd791f53ba27b07"), "name" : "zcm", "age" : 22 }​> db.student.find({name:'zcm'},{age:1}){ "_id" : ObjectId("5b3789beccd791f53ba27b05"), "age" : 22 }{ "_id" : ObjectId("5b378bc6ccd791f53ba27b07"), "age" : 22 }​> db.student.find({name:'zcm'},{age:0}){ "_id" : ObjectId("5b3789beccd791f53ba27b05"), "name" : "zcm" }{ "_id" : ObjectId("5b378bc6ccd791f53ba27b07"), "name" : "zcm" }
3、更新数据

更新数据

db.集合名称.update(

<query>, (条件)

<update>,

{multi: <boolean>}

​ )

# 全文档更新:db.stu.update({name:’shiwei’},{xx:’yy’ } )​# 指定属性更新,通过操作符$set,有相同的属性时,只更改一条数据db.student.update({name:'zcm'},{$set:{age:18}})​# 更新多条: { multi: ture }   。 (前提只能指定字段更新)db.student.update({name:'zcm'},{$set:{age:5}},{multi:true})
4、删除数据

db.集合名称. remove(

<query>, (条件)

<justOne>

​ )

# 只是删除 一条数据db.student.remove({xx:'yy'},{justOne:true})​# 删除满足条件的,所有数据:db.student.remove({name:'zcm'})

阶段四、Python操作mongodb

1、连接器(驱动)

安装python包:pip install pymongo

引入包pymongo:import pymongo

建立连接并创建客户端: client= pymongo.MongoClient('127.0.0.1',27017)

指定数据库:db=client[ 数据库名 ]

指定集合:stu=db [ 集合名]

2、主要方法

insert_one

insert_many

update_one

update_many

delete_one

delete_many

find_one

find

3、例子
import pymongo​# 建立连接client = pymongo.MongoClient('127.0.0.1', 27017)​# 获取要操作的数据库db = client['student']​# 获取要操作的集合col = db['student']​data = col.find()print(data)  # 打印出了一个对象,证明连接成功了​# 插入一条数据# col.insert_one({'name': 'zcm', 'age': 22})​# 插入多条数据# li = [#     {'nane': 'zhangsan', 'age': 30, 'sex': 'nan'},#     {'nane': 'baby', 'age': 18, 'sex': 'nv'},#     {'nane': 'dengchao', 'age': 30, 'sex': 'nan'}# ]# col.insert_many(li)​# 更新一条数据# col.update_one({'name': 'zcm'}, {'$set': {'age': 3}})​# 更新多条数据# col.update_many({'name':'zcm'},{'$set': {'age':18}})​# 查询一条数据# find = col.find_one()# print(find)​# 查询多条数据    只返回对象# find_d = col.find()# print(find_d)​# 删除一条数据# col.delete_one({'name':'zcm'},{'justOne':'true'})​# 删除多条数据# col.delete_many({'name':'zcm'})

 

转载于:https://www.cnblogs.com/zcmq/p/9275822.html

你可能感兴趣的文章
PAT Advanced Level 1043
查看>>
C++重载运算符练习--对people类重载“= =”运算符和“=”运算符
查看>>
Nmap命令的实用范例
查看>>
7-1 查找整数编程总结
查看>>
安装PHP以及搭建博客(一)
查看>>
关于WORD文档的读取乱码问题
查看>>
[问题记录.dotnet]取网卡信息报错"找不到"-WMI - Not found
查看>>
Codeforces Round #254 (Div. 2):B. DZY Loves Chemistry
查看>>
linux 安装虚拟机
查看>>
Thinkphp5笔记二:创建模块
查看>>
centos 安装mysql
查看>>
Redis 禁用FLUSHALL FLUSHDB KEYS 命令
查看>>
Matlab中imread函数使用报错“不应为MATLAB 表达式”分析
查看>>
MFC ADO数据库操作
查看>>
图像质量评价-NQM和WPSNR
查看>>
面试准备——相关知识
查看>>
每日一字:悟
查看>>
CentOS7.6安装稳定版Nginx
查看>>
LeetCode 1002. Find Common Characters (查找常用字符)
查看>>
建立隐藏管理员用户
查看>>