数据库 集合 文档
show databases显示数据库
show collections 显示数据库里的集合use test 选择test数据库 如果此库不存在 在里面插入文档则系统会自动创建test库
mongdb会自动生成文档数据id 保证唯一性
id属性可以自行指定 数据库就不会添加了
db.student.insert( {_id:“hello”,name:“wukong”,age:18} )
插入
db.student.insert({name:“wukong”,age:18})
db代表当前数据库,student代表要插入到集合的名字 insert 插入 将json格式放到里面
多条插入
db.student.insert([
{name:“wukong”,age:18}
{name:“wuzong”,age:18}
{name:“wuktng”,age:18}
])
为了语意明确 可以增加 insertOne 代表插入一个
insert Many 插入多个
====================================
查询
db.student.find()查看当前student集合下的文档
db.student.find({_id:“hello”}) 查询id为hello的文档
db.student.find({age:16,name:“白骨精”})
符合条件的全部显示
find()返回的是一个数组
findOne返回符合的第一条文档对象
db.student.find({age:“16”})[0]取数组内的第一条文档
db.student.findOne({age:“16”}).name 返回的是第一个文档对象的name 只有单个文档对象可用 数组不可用
db.student.find({}).count 可以查看文档数 length也可以
修改
db.student.update({name:“wukong”},{age:28})
update 使新对象替换旧对象 将name替换成age(有风险 尽量不要用)
db.student.update(
{“_id”:“hello”}, //这里是匹配的条件
{$set {name:“wuzeng”,age:“29”}} //要修改的值
)
$unset{name:“wukong”}用来删除文档的指定属性 wukong可写可不写
update如果有多个匹配到的条件则默认只改一个
也可以修改多个 需要加参数mutil
updateMany则是修改全部匹配到的条件
db.student.replaceOne({age:18},{age:22})将年龄修改为22
删除
db.student.remove({age:28},true)默认是都删 所以要添加限制条件 true则只会删第一个
db.student.deleteOne({age:28})删除一个符合条件的
db.student.deleteMany({age:28}) 删除全部符合条件的
db.student.remove({});清空数据(性能差因为是一个一个匹配的
db.student.drop(); 删除集合 这个比上面的快
db.dropdatabases 删除数据库