MongoDB基础知识

MongoDB -非关系型数据库

MongoDB数据库介绍

------------面向文档的数据库 {"foo":3,"greeting":"Hello World!"}

mongodb的数据是存储在硬盘上的,只不过需要经常读取的数据会被加载到内存中,这样提高查询效率,所谓内存数据映射,所以mongodb本身很吃内存。

特点:

  • 区分大小写
  • key唯一,不可重复
  • 文档可嵌套
  • 键值对是有序的

理解:

  • 集合就是一组文档
  • 文档类似于关系库里的行
  • 集合类似关系库里的表
  • 集合中的文档无需固定的结构(于关系型数据库的区别)

命名规则:

  •  不能是空字符串("")
  •     不能包含\0字符(空字符)
  •  不能使用system.的前缀(系统保留)
  •  建议不包含保留字"$"
  •  用.分割不同命名空间的自己和(如:blog.users,blog.posts)

 知识点:

  •  多个文档组成集合,多个集合组成数据库
  •  一个实例可以承载多个数据库
  •  每个数据库都有独立的权限
  •  保留数据库名称(admin,local,config系统默认的)

安装配置MongoDB 

启动

windows:  mongod.exe --dbpath  D:\\MongoDB\\data         路径 数据存储地址

Linux:sudo service mongod start

windows下启动链接Mongo:

1.找到安装目录下bin文件夹,按住shift+鼠标右键,选择打开cmd(win10打开Windows Powershell),输入:mongod --dbpath  D:\\MongoDB\\data ,或者mongod.exe --dbpath  D:\\MongoDB\\data 

2.链接mongodb:    找到安装目录下bin文件夹,按住shift+鼠标右键,选择打开cmd(win10打开Windows Powershell),输入:mongo ,或者mongo.exe

注意:

  输入命令行后出现:Suggestion [3,General]: 找不到命令 mongo,但它确实存在于当前位置。默认情况下,Windows PowerShell 不会从当前位置加载命令 。如果信任此命令,请改为键入“.\mongo”。有关详细信息,请参阅 "get-help about_Command_Precedence"。

  则按要求在前面加上“.\”即可正常运行

 

 

使用命令行操作数据库(CRUD  ——create read update delete) 

查看数据库

show dbs;

创建数据库

use students

添加数据

stu = {name:"Jhon",age:12}

插入一条数据

db.students.insert(stu)       

db.students.insertOne(stu)

插入多条数据

db.students.insertMany(stu)                   

查询数据

db.students.find()

查询一条数据

db.students.findOne()

查询多条数据

db.students.findMany()

依条件查询数据

参数一(条件),参数二(输出那些参数)

db.students.find({sex:'male'},{name:1,age:true,_id:0})

大于等于60分    g: greater   e:equal

db.students.find({grade:{'$gte':60})

或后面跟数组

db.students.find('$or':[{sex:'male',age:18},{sex:'female',age:16}])

排序 1=> 升序   -1=> 逆序

db.students.find().sort({age:1})

 修改

db.students.find({sex:'female'},{'$inc':{age:1},{multi:true})

修改数据

1.修改的数据查询出来,得到一个对像:stu_obj = db.students.findOne()         

2.将对象进行变更:stu_obj.name = "amy"

3.变更对象:db.students.update({name:"Jhon"},stu_obj)

注意,如果直接更改,会导致同条数据其他数据丢失

db.students.update(1,2)   1---条件,2---更改内容

删除数据

db.students.remove({name:'Jhon'})

也可以直接传入一个空字符----清空数据库:db.students.remove({})         

 

MongoDB 数据可视化工具:Robomongo hu48

下载地址:

链接:https://pan.baidu.com/s/1gSLijhU3kOG6EGyWDKjPgA

 

posted @ 2020-08-27 11:34  菜鸟要飞~  Views(394)  Comments(0Edit  收藏  举报