MongoDB数据库入门_实例讲解,简单易懂

  • 一MySQL连接字符串:
           和MySQL一样,MongoDB的连接,同样是以字符串的形式。
    标准的URL连接字符串:

  • mongodb://username:password@host1:port1,host2:port2…/database?options

和MySQL类似;
server(ip);database(数据库名);User id(用户名);password(密码):options
不同的是:

  • 1mongodb://是固定的格式

  • 2MongoDB至少要有一个host,因为该NoSQL可用做分布式数据库,可以同时连接到多个数据库,共享资源。

  • 3username:password@是可选的,在我们不指定username和password时,就会默认连接到test数据库

  • 4端口号是可选的,默认是27017

  • 5database是依赖于username和password,为什么这样说呢?
    因为如果我们指定了username:password@,就会连接并登录到指定的数据库,若不指定,则默认连接到test数据库

  • 二MongoDB的基本操作
    1创建数据库&切换数据库&显示当前/所有数据库
    MongoDB在创建数据库上比MySQL灵活一下
    use database_name
    (1)若存在对应的数据库,那么就会切换到对应的数据库
    (2)若不存在对应的数据库,那么就会创建该数据库
    MySQL
    创建数据库
    create database database_name
    切换数据库
    use database_name

显示当前选中的数据库
show db
显示所有的数据库
show dbs

  • 2创建集合
    所谓的集合,其实就好比Mysql数据库中的表 MongoDB有两种创建集合的方式
    (1)直接创建

    db.createCollection("集合名”)

       (2)间接创建 db.集合名.insert() 这里和上面创建数据库很像
若存在对应的集合,那么就直接向该集合中插入文档 若不存在对应的集合,那么就会创建该集合

  • 3集合中插入数据
    (1)文档形式插入(只支持,一次性插入一个数据,不支持一次性插入多条数据)
    db.xx.insert({“key1”:“value1”,“key2”:value2});
    MongoDB数据库入门_实例讲解,简单易懂_第1张图片
    (2)以变量形式插入
    这里提一下:MongoDB的后台管理shell是采用javascript shell来进行管理,所以我们可以在该控制台执行简答的运算,同时,可以为变量赋值

在这里插入图片描述
定义变量,并将该变量插入到集合中去在这里插入图片描述
(3)批量插入数据:
前面说到该MongoDB的cmd界面是一个JavaScriptshell界面
所以可以声明变量,方法等
MongoDB数据库入门_实例讲解,简单易懂_第2张图片
- 4查找集合中的文档
查询该集合下的所有文档
db.xx.find()(与mysql的select * 类似)
MongoDB数据库入门_实例讲解,简单易懂_第3张图片
查找集合中的变量
在这里插入图片描述
条件查询集合
db.collection.find({key:value})//此处的key不需要像插入时那样打引号
MongoDB数据库入门_实例讲解,简单易懂_第4张图片
- 5更新集合中的文档
与MySQL类似,也是采用update作为关键字

db.xx.update(
,
,{
upsert:,
multi:,
writeConcern:
}
}

db.collection.update({条件},{操作},{选项});
db.xxx.update({name:“111”},{KaTeX parse error: Expected 'EOF', got '}' at position 19: …:{"name":"999"}}̲); 将姓名为111的改为99…set:{}进行数据更新
MongoDB数据库入门_实例讲解,简单易懂_第5张图片
upsert:(布尔类型)可选,意思是,若不存在需要更新的数据
   true:将该数据插入到该集合中,
   false 将该数据不插入到集合中

multi:可选,同样是布尔类型,若该参数为true,则更新所有满足条件的记录,若为false,则只更新第一条满足条件的记录

multi为true:
更新了所有满足条件的数据
MongoDB数据库入门_实例讲解,简单易懂_第6张图片multi为false:
更新了第一条满足条件的数据
在这里插入图片描述

  • 6删除数据库&集合
    db.dropDatabase()
    即可删除当前的数据库

db.集合名.drop()即可删除当前集合
db.集合名.remove()清空当前集合
与MySQL数据库不一样的是
删除数据库
drop database database_name
删除表
drop table table_name
清空表
delete table table_name

以上就是对MongoDB的入门介绍了,若有疑问或不懂的欢迎评论咨询,我也是正在学习MongoDB,希望和大家一起讨论交流&进步!

你可能感兴趣的:(MongDB)