一、创建数据库
1、use 数据库名
使用use时,如果数据库存在则会进入到相应的数
据库,如果不存在则会自动创建
一旦进入数据库,则可以使用db来引用当前库
2、db.collection.insert(文档)
向集合中插入文档,如果集合不存在则创建
3、db.createCollection()
创建一个新的集合
4、db.collection.drop()
删除集合
二、
1、插入文档
doc:文档或文档数组
<1>
db.collection.insert(doc)
- insert()可以向集合中插入一个或多个文档,分别是传递一个对象,或一个数组。
- 可以将对象或数组中的对象添加进集合中。
- 添加时如果集合或数据库不存在,会自动创建。
- 插入的文档对象会默认添加_id属性,这个属性对应一个唯一的id,是文档的唯一标识。默认会由根据时间戳和机器码生成的ObjectId()来充当,目的就是确保数据唯一性,可以在插入的时候加入_id属性来自己进行添加,而且自己指定也必须确保唯一性.
<2>
db.collection.insertOne(doc)
- 向集合中插入一个文档
<3>
db.collection.insertMany(doc)
- 向集合中插入多个文档
例子:
db.stus.insert({
name:"猪八戒",age:28,gender:"男"});
db.stus.insert([
{
name:"沙和尚",age:38,gender:"男"},
{
name:"白骨精",age:16,gender:"女"},
{
name:"蜘蛛精",age:14,gender:"女"}
]);
db.stus.insert({
_id:"hello",name:"猪八戒",age:28,gender:"男"});
2、查询文档
condition:查询条件
<1>
db.collection.find()
等同于
db.collection.find({
})
- find()用来查询集合中所有符合条件的文档
- find()可以接收一个对象作为条件参数
{ }:表示所有文档
{ 属性:值 }:查询属性是指定值的文档 - 可以根据指定条件从集合中查询所有符合条件的文档
- 返回的是一个数组
<2>
db.collection.findOne(condition)
- 查询第一个符合条件的文档
- 返回的是一个文档对象
<3>
db.collection.find(condition).count()
- 查询符合条件的文档的数量
例子:
db.stus.find({
_id:"hello"});
db.stus.find({
age:16 , name:"白骨精"});
db.stus.find({
age:28});
db.stus.findOne({
age:28});
db.stus.find({
}).count();
3、修改文档
condition:条件,new object:新的对象
<1>
db.collection.update({
condition},{
new object})
- 可以修改、替换集合中的一个或多个文档
- update()默认情况下会使用新对象来替换旧的对象
如果需要修改指定的属性,而不是替换需要使用“修改操作符”来完成修改
$set 可以用来修改文档中的指定属性
$unset 可以用来删除文档的指定属性 - update()默认只会修改一个,即当有多个文档满足条件的时候,只会修改第一个匹配到的文档。若想修改多个,可以加入multi属性,即multi:true即可把匹配到的全部修改。
<2>
db.collection.updateOne({
condition},{
new object})
- 修改集合中的一个文档
<3>
db.collection.updateMany({
condition},{
new object})
- 修改集合中的多个文档
<4>
db.collection.replaceOne()
- 替换集合中的一个文档
例子:
//替换
db.stus.update({
name:"沙和尚"},{
age:28});
db.stus.update(
{
"_id" : ObjectId("59c219689410bc1dbecc0709")},
{
$set:{
gender:"男",
address:"流沙河"
}