您的位置:首页 > 数据库 > Mongodb

数据库基础学习之MongoDB数据库操作

2020-03-06 11:04 896 查看

MongoDB基础

1.认识MongoDB:

基于分布式文件存储的开源数据库系统。

旨在为WEB应用提供可扩展的高性能数据存储解决方案

将数据存储为一个文档,文档类似与Json格式,

{
name:“小明”,

age:16,

address: {city:“长沙”, country:“china”}

}

MongoDB数据模型:

MongoDB进入与退出:

进入: mongo

退出: exit

2.库,集合操作

(1)库级操作语句:

1.显示所有库: show dbs

2.切换/创建数据库: use 数据库名称 必须插入数据才算创建成功。

3.查看所在库: db

4.删除库: db.dropDatabase()

(2)集合操作语句:

1.显示当前数据库的集合: show collections

2.创建集合: db.createCollection(name)

例如: >db.createCollection(‘student’)

{“ok”:1}

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

3.文档操作:

1.添加文档(数据):

命令: db.集合名称.insert(document) 如果有这个集合就插入数据,如果没有这个集合就创建并插入数据。

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

(1)例: db.stu.insert({‘name’:‘qiuping,‘age’:18,‘sex’:‘m’})

1.添加文档时,如果不指定_id参数,MongoDB会为文档分配一个唯一的ObjectId

每条文档都有一个id,id是唯一的,可以用于辨别不同的文档。

称为:唯一性标识
2.添加文档时,指定_id参数:

db.stu.insert({’_id’:2,‘name’:‘qiuping,‘age’:18,‘sex’:‘m’})

(2)添加多条文档

db.student.insert([

{name:xiaoming’, sex:‘男’, age:16},

{name:’xiaobai’, sex:‘男’, age:18},

{name:’moran‘, sex:’女’, age:18},

])

2.查询文档(数据):

命令: db.集合名称.find([conditions])

(1)查看集合中全部数据: db.student.find()

(2)格式化显示: db.student.find().pretty()

(3)查看满足条件的数据: db.student.find({name:‘xiaoming’})

(4)控制数据: db.student.find().limit(数字1).skip(数字2)
数字1表示显示数据个数;数字2表示开始位置(默认位置从0开始)。

3.噩梦条件:

MongoDB的条件语句也十分的强大.

and条件 {$and:[{expression1}, {expression1}, …] }

例如:

or条件 {$or:[{expression1}, {expression1}, …] }

例如:

and和or混用

例子:

(1) 第一个是查询age等于25的数据;第二个是查询age大于25的数据:

4.修改文档(数据):

命令: db.集合名称.update(, , {multi:})

(1)修改一条数据: db.table.update({sex:‘男’}, {age:20})

{sex:'男'}为满足的条件的那条数据,{age:20}为覆盖那条满足条件的数据的新数据。

代码实现后对应的那条数据只包含此代码中写的数据,原有的别的数据被覆盖。

(2)指定属性修改: { $set: {age:20} }

db.table.update({name:'xiaoming'}, {$set: {age:666, sex: 'xx'}} )

把指定的name:'xiaoming'修改为age:666, sex: 'xx',其他的数据不变不覆盖。

注意:每次只修改一条。

(3)更新集合中所有满足条件的文档: { multi: true }

db.table.update({sex:'男'}, {$set:{sex:'女'}}, { multi:true} )

注意: 全部满足的都修改。

5.删除文档:

命令: db.table.update({sex:‘男’}, {$set:{sex:‘女’}}, { multi:true} )

(1)删除集合中所有的文档:

db.table.remove({})

(2)删除集合中满足条件的所有文档:

db.table.remove({sex: '男'})

(3)只删除集合中满足条件的第一条文档: { justOne: true }

db.table.remove({sex:'男'}, { justOne:true} )

6.总结:

4.Python与MongoDB交互

在虚拟机中下载第三方库:pip install pymongo

import pymongo:

(1)建立连接:client = pymongo.MongoClient()

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

(3)指定集合:collection=db[集合名]

基本使用:(python3中官方已经不推荐使用以下方法,但继续使用没问题)

1.查找文档: find()

2.添加文档: insert()

3.修改文档: update()

4.删除文档: remove()

(官方推荐我们使用以下方法)

1.查找一条文档: find_one()

查找所有:find()  只是一个对象  可以用for 遍历出来

2.添加一条文档:insert_one

添加一条文档:insert_one

添加多条文档: insert_many

3.删除一条文档:delete_one

删除一条文档:delete_one

删除多条文档: delete_many

4.修改一条文档: update_one

修改多条:update_many()
  • 点赞 1
  • 收藏
  • 分享
  • 文章举报
孤寒rm- 发布了37 篇原创文章 · 获赞 47 · 访问量 1615 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: