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

和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});

    (2)以变量形式插入
    这里提一下:MongoDB的后台管理shell是采用javascript shell来进行管理,所以我们可以在该控制台执行简答的运算,同时,可以为变量赋值

MongoDBCompass 创建数据库 mongodb数据库连接方式_数据


定义变量,并将该变量插入到集合中去

MongoDBCompass 创建数据库 mongodb数据库连接方式_数据库_02


(3)批量插入数据:

前面说到该MongoDB的cmd界面是一个JavaScriptshell界面

所以可以声明变量,方法等

MongoDBCompass 创建数据库 mongodb数据库连接方式_MySQL_03


- 4查找集合中的文档

查询该集合下的所有文档

db.xx.find()(与mysql的select * 类似)

MongoDBCompass 创建数据库 mongodb数据库连接方式_MySQL_04


查找集合中的变量

MongoDBCompass 创建数据库 mongodb数据库连接方式_数据_05


条件查询集合

db.collection.find({key:value})//此处的key不需要像插入时那样打引号

MongoDBCompass 创建数据库 mongodb数据库连接方式_数据库_06


- 5更新集合中的文档

与MySQL类似,也是采用update作为关键字

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

db.collection.update({条件},{操作},{选项});

db.xxx.update({name:“111”},{KaTeX parse error: Expected 'EOF', got '}' at position 19: …:{"name":"999"}}̲); 将姓名为111的改为99…set:{}进行数据更新

MongoDBCompass 创建数据库 mongodb数据库连接方式_MySQL_07


upsert:(布尔类型)可选,意思是,若不存在需要更新的数据

   true:将该数据插入到该集合中,

   false 将该数据不插入到集合中

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

multi为true:

更新了所有满足条件的数据

MongoDBCompass 创建数据库 mongodb数据库连接方式_MySQL_08

multi为false:

更新了第一条满足条件的数据

MongoDBCompass 创建数据库 mongodb数据库连接方式_MongoDB数据库入门_09

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

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

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