MongoDB白话一篇懂

喜夏-厌秋 提交于 2020-02-01 20:48:10

概念在这里插入图片描述

从关系模式图(E-R图)到对象模式模型
在这里插入图片描述
mongo的表多形性,动态性,传统数据库不能出现
在这里插入图片描述

MongoDB的基础操作

服务启动:
在你想要存放数据的地方,新建一个文件夹,如db

F:\>mongodb/bin
F:\mongodb\bin>mongod --path=/data/db
//我的是win10系统在git bash下面执行mongod --path=/data/db命令创建数据库

如果文件夹出现以下内容能买数据库创建成功
在这里插入图片描述
如果配置好环境变量的话,命令行输入mongod 就可以启动服务跟如服务其中打开网址显示It looks like you are trying to access MongoDB over HTTP on the native driver port.说明启动成功


MongoDB对数据的操作

创建数据库:

MongoDB 创建数据库的语法格式如下:

use DATABASE_NAME

举例:

> use mongo  
switched to db mongo  
> db 
mongo 
>  

增: db.COLLECTION_NAME.insert(document)

>db.col.insert({title: 'MongoDB 教程',
	description: 'MongoDB 是一个 Nosql 数据库',
	by: 'MongoDB中文网', 
	url: 'http://www.mongodb.org.cn', 
	tags: ['mongodb', 'database', 'NoSQL'],
	likes: 100  
})
  • 如果col不存在会自动创建并且插入数据

查询所有数据库在mongo语句下
show dbs
local 0.078GB
test 0.078GB

//插入字段
> db.col.insert(document)  WriteResult({ "nInserted" : 1 })  >   

删:

MongoDB 删除数据库的语法格式如下:
db.dropDatabase()

比如删除某个数据库我们首先要做的就是显示所有的数据库然后切换到要删除的数据库然后进行删除,最后再显示所有数据库查询是否删除成功

//查询
> show dbs  
local   0.078GB  
mongo   0.078GB  
test    0.078GB
//切换
> use runoob  switched to db mongo  >
//删除
> db.dropDatabase()  { "dropped" : "runoob", "ok" : 1 }
//查询
> show dbs  
local  0.078GB  
test   0.078GB  
> 

改:
update() 方法用于更新已存在的文档。语法格式如下:

db.collection.update(    
	<query>, 
	<update>, 
	{       
		upsert: <boolean>,   
		multi: <boolean>,  
		writeConcern: <document>
	}
)

查:

> db.col.find()  
{ 
	"_id" : ObjectId("56064886ade2f21f36b03134"),
	"title" : "MongoDB 教程",
	"description" : "MongoDB 是一个 Nosql 数据库",
	"by" : "MongoDB中文网",
	"url" : "http://www.mongodb.org.cn",
	"tags" : [ "mongodb", "database", "NoSQL" ],
	"likes" : 100 
}
>  

常用命令

show dbs:显示数据库列表 
show collections:显示当前数据库中的集合(类似关系数据库中的表) 
show users:显示用户

use <db name>:切换当前数据库,这和MS-SQL里面的意思一样 
db.help():显示数据库操作命令,里面有很多的命令 
db.foo.help():显示集合操作命令,同样有很多的命令,foo指的是当前数据库下,一个叫foo的集合,并非真正意义上的命令 
db.foo.find():对于当前数据库中的foo集合进行数据查找(由于没有条件,会列出所有数据) 
db.foo.find( { a : 1 } ):对于当前数据库中的foo集合进行查找,条件是数据中有一个属性叫a,且a的值为1

如果遇到权限不足,用管理员身份打开命令行工具或者power shell或者git bash
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!