#MongoDb的入门使用

1. Mongodb数据库命令

查看当前数据库

db(没有切换数据库的情况下,默认使用test数据库)

查看所有的数据库

show dbs    或    show databases

切换数据库

db_name为show dbs后返回的数据库名

删除当前的数据库****

db.dropDatabase() 
解析:db 不出现test数据库的原因,因为test库是虚拟的,除非插入数据,跟use 表名  创建库的原理一样,库没有被储存在磁盘中

2. Mongodb数据库命令集合的命令

无需手动创建集合:向不存在的集合中第一次添加数据时,集合会自动被创建出来

手动创建集合:

db.createCollection(name,options)

db.createCollection("stu")

db.createCollection("sub",{capped:true,size:10})

解析:

参数capped:默认值为false表示不设置上限,值为true表示设置上限

参数size:集合所占用的字节数,当capped值为true时,需要指定此参数,表示上限大小,当文档达到上限时,会将之前的数据覆盖,单位:字节

查看集合:show collections

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

检查集合是否设定上限:db.集合名.isCapped()

3. 数据库相关概念

在一个数据库软件中可以包含多个数据仓库,在每个仓库中可以包含多个数据集合,每个数据集合可以包含多条文档(具体的数据)

术语 解释说明
database 数据库,mongoDB数据库软件中可以建立多个数据库
collection 集合,一组数据的集合,可以理解为JavaScript中的数组
document 文档,一条具体的数据,可以理解为JavaScript中的对象
field 字段,文档中的属性名称,可以理解为JavaScript中的对象属性

Mongodb增删改查

新建数据库

use 数据库名

添加集合

db.createCollection(集合名)

添加数据

db.集合名.insert({name:'张三',age20})

添加多条:

db.info.insert({name:'张三',age:20},{name:'zhangsan',age:20},{name:'zhangsan',age:20})

删除数据

db.集合名.remove({查询条件}):删除所有满足条件的数据
db.集合名.deleteMany({查询条件}):删除所有满足条件的数据
db.集合名.deleteOne({查询条件}):删除满足条件的第一条数据

修改(更新)数据

db.集合名.update({查询条件},{$set:{修改内容}})
示例:
db.movie.update({name:'zhangsan'},{$set:{age:20}})
注意:
update只修改满足查询条件的第一条数据(比如name=zhangsan的人有很多,但是只修改第一条)
db.集合名.updateMany({查询条件},{$set:{修改内容}})
注意:修改所有满足条件的数据
db.集合名.updateOne({查询条件},{$set:{修改内容}})
修改满足条件的第一条数据

查询数据

db.集合名.find()
db.集合名.find().pretty()
注意:pretty()没有实际的含义,仅在命令行或查询客户端中可用,在代码中不可用
db.集合名.find({查询条件})
且: db.info.find({name:'lisi',age:20})
查询info中name等于lisi 且 age等于 20 的数据,如果不存在则没有返回
或 :db.info.find({$or[{name:'lisi',age:25},{name:'王五'}]})
非:db.info.find({name:{$ne:'lisi'}})
查询info集合中name不等于lisi的数据

删除集合

db.集合名.drop():删除指定集合

查询集合

show collections:显示当前数据库的集合列表

查询数据库

show dbs:列出当前所有的数据库,默认列出(admin,config和local三个数据库)
db:显示当前正在操作的数据库(默认是test,因为test数据库里面没有数据,所以test没有在show dbs命令中显示)

删除数据库

db.dropDatabase():删除数据库(需要使用use先切换到被删除的数据库上)

你可能感兴趣的:(mongodb,数据库,nosql)