Mongodb

Mongodb概述

知识点一:Mongodb的常用操作

Mongodb概述

端口号27017

bash 复制代码
mongosh #进入mongo
exit #退出

#显示数据库
show dbs
#显示当前数据库
db
#进入数据库创建数据库
use jianqidatabase
#创建集合
db.createCollection("students")
#查看集合
show collections
#删除库(一定要进入到库里面去)
db.dropDatabase()
#删除集合
db.students.drop()

知识点一:MongoDB的常用操作

bash 复制代码
#插入数据
db.students.insert({'name':'jianqi','age':20})
db.students.insert({'name':'fufu','age':21})

#查看数据
db.students.find()

#插入多行数据
db.students.insert([{'name':'jianqi','age':20},{'name':'fufu','age':21}])

#指定id
db.students.insert({name:"jianqi",_id:1,age:20,sex:"女"})

#格式化输出
db.students.find().pretty

#查询满足条件的数据
db.students.find({name:"jianqi"})
db.students.find({name:"jianqi"}).pretty()

-------------------------------------------------------------------------------------------
条件
#and条件
db.students.find(
    {$and:
        [
            {name:"jianqi"},
            {age:20}
        ]
    }
                )
db.students.find({$and:[{name:"jianqi"},{age:20}]})

#or条件
db.students.find({$or:[{name:"jianqi"},{age:20}]})

#and和or混用
db.students.find({$or:[{$and:[{name:'jianqi'},{age:20}]},{$and:[{name:fufu},{age:21}]}]})

#修改
第一个字典是条件,只会更新找到的第一条数据,而且是全部覆盖
db.students.update({"name":"jack"},{age:100})
#修改指定的数据
db.students.update({name:"jianqi"},{$set:{age:18}})             #有就修改,没有就不修改
db.students.update({name:"fufu"},{$set:{age:19}},{upsert:true}) #有就修改,没有就插入

#更新满足条件的所有文档
db.students.update({name:"jack"},{$set:{name:"beibei"}},{multi:true})

#删除
#删除满足条件的第一条文档
db.students.remove({name:"jack"},{justOne:true})
#删除满足要求的所有文档
db.students.remove({name:"jack"})
#删除所有文档
jianqidatabase> db.students.remove({})

知识点二:Python操作MongoDB

python 复制代码
#如果没安装库先安装库命令如下
pip install pymongo

import pymongo

#建立连接
client=pymongo.MongoClient(host='127.0.0.1',port=27017)

#指定数据库
db=client["jianqidatabase"]

#指定下集合
my_col=db["students"]

#增一条数据
my_col.insert_one({'name':"jianqi",'age':18})
#增多条数据
my_col.insert_many([{'name':"jianqi1",'age':19},
                     {'name':"jianqi2",'age':20},
                     {'name':"jianqi3",'age':21}])

#删除一条
res=my_col.delete_one({'name':'jianqi1'})
print(res)
#全删
res=my_col.delete_many({})

#查一条数据
res=my_col.find_one()
print(res)
#查多条数据
res=my_col.find()
for i in res:
    print(i)

#改
my_col.update_one({'name':"jianqi1"},{"$set":{'age':100}})
res=my_col.find_one({'name':'jianqi1'})
print(res)
相关推荐
一只小bit2 小时前
MySQL事务:如何保证ACID?MVCC到底如何工作?
数据库·mysql·oracle
小猪咪piggy2 小时前
【项目】小型支付商城 MVC/DDD
java·jvm·数据库
向阳而生,一路生花2 小时前
redis离线安装
java·数据库·redis
·云扬·2 小时前
使用pt-archiver实现MySQL数据归档与清理的完整实践
数据库·mysql
黄焖鸡能干四碗2 小时前
信息安全管理制度(Word)
大数据·数据库·人工智能·智慧城市·规格说明书
zhangyifang_0092 小时前
PostgreSQL一些概念特性
数据库·postgresql
weixin_46682 小时前
安装Zabbix7
数据库·mysql·zabbix
数据库生产实战2 小时前
Oracle 19C实测:重命名分区表后又重命名分区索引,分区索引会失效吗?DBA必看避坑指南!
数据库·oracle·dba
king_harry2 小时前
window server2008下Oracle 配置dblink查询 MySQL 数据
数据库·mysql·oracle·odbc·dblink
chde2Wang2 小时前
hbase启动报错-keeperErrorCode
大数据·数据库·hbase