查看、创建、切换、删除库
-show dbs //查看已有的库
-db //显示当前所在的库
-use 库名 // 切换库,如库不存在延迟创建库
-show collections 或 show tables //查看库下已有集合
-db.dropDatabase() //删除当前所在的库
数据库名称规范
-不能是空字符串("")
-不得含有‘’(空格)$ / \和\0 (空字符)
-应全部小写
-最多64字节
集合管理
查看、创建、删除集合
-show collections 或show tables //查看集合
-db.集合名.drop() //删除集合
-db.集合名.save({","}) //创建集合,集合不存在时,创建并添加文档
集合管理
集合名命名规范
不能是空字符串""
不能含有\0字符(空字符),此字符表示集合的结尾
不能以“system.”开头,这是为系统集合保留的前
用户创建的集合名字不能含有保留字符
文档基本管理
查看、统计、添加、删除文档
db.集合名.find()
db.集合名.count()
db.集合名.insert({"name":"jim"})
db.集合名.find({条件})
db.集合名.findOne() //返回当前第一条数据
db.集合名.remove({}) //删除所有文档
db.集合名.remove({条件}) //删除匹配的所有文档
验证过程:
> show dbs ----查看数据库
admin 0.000GB
config 0.000GB
local 0.000GB
> db
test
> use db ---切换数据库
switched to db db
> show tables ----查看表格
> show collections -----查看集合
> db
db
> use zhuhaiyan
switched to db zhuhaiyan
> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB
> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB
> use zhuhaiyan
switched to db zhuhaiyan
> db
zhuhaiyan
insert: 若新增数据的主键已经存在,则会抛 org.springframework.dao.DuplicateKeyException 异常提示主键重复,不保存当前数据。
save: 若新增数据的主键已经存在,则会对当前已经存在的数据进行修改操作。
> db.c1.save({name:"bob",age:19,sex:"girl"}); ---存储数据
WriteResult({ "nInserted" : 1 })
> db.c1.save({name:"zhu",class:"nsd1803"})
WriteResult({ "nInserted" : 1 })
> db.c1.find()
{ "_id" : ObjectId("5b4039404d736c69117d5f07"), "name" : "bob", "age" : 19, "sex" : "girl" }
{ "_id" : ObjectId("5b4039694d736c69117d5f08"), "name" : "zhu", "class" : "nsd1803" }
> show tables
c1
> db.c1.insert({like:"play"}); ---插入数据
WriteResult({ "nInserted" : 1 })
> db.c1.find()
{ "_id" : ObjectId("5b4039404d736c69117d5f07"), "name" : "bob", "age" : 19, "sex" : "girl" }
{ "_id" : ObjectId("5b4039694d736c69117d5f08"), "name" : "zhu", "class" : "nsd1803" }
{ "_id" : ObjectId("5b4057de4d736c69117d5f09"), "like" : "play" }
> db.c1.findOne()
{
"_id" : ObjectId("5b4039404d736c69117d5f07"),
"name" : "bob",
"age" : 19,
"sex" : "girl"
}
> show tables
c1
> db.c1.remove({}) ---删除整个集合数据
WriteResult({ "nRemoved" : 3 })
> db.c1.remove({name:"bob"}) -----按条件删除集合数据内容
WriteResult({ "nRemoved" : 1 })
> db.c1.find({name:"bob"}) -----按条件查看相关的数据
{ "_id" : ObjectId("5b40587f4d736c69117d5f0a"), "name" : "bob", "age" : 19, "sex" : "girl" }
> db.c1.count() ----统计集合的条数
1
> db.c1.find() -----查找集合
{ "_id" : ObjectId("5b4058854d736c69117d5f0b"), "like" : "play" }
> db.c1.drop()
true