分享

mongodb系列

 昵称21365845 2015-06-20

文档插入方式一:

> db.mongo.insert({name:"jack",age: 30});

WriteResult({ "nInserted" : 1 })

> db.mongo.find();

{ "_id" : ObjectId("54ded72e0dc51419494b4565"), "name" : "jack", "age" : 30 }

文档插入方式二:

> j = { name : "mongo" };

{ "name" : "mongo" }

> t = { x : 3 };

{ "x" : 3 }

> i = {name : "jack"};

{ "name" : "jack" }

> db.things.save(j);

WriteResult({ "nInserted" : 1 })

> db.things.save(t);

WriteResult({ "nInserted" : 1 })

> db.things.save(i);

WriteResult({ "nInserted" : 1 })

> db.things.find();

{ "_id" : ObjectId("54ded4960dc51419494b4562"), "name" : "mongo" }

{ "_id" : ObjectId("54ded4ad0dc51419494b4563"), "x" : 3 }

{ "_id" : ObjectId("54ded6690dc51419494b4564"), "name" : "jack" }

我们已经把数据插入到表mongo和表things里面了。

当我们find()查询的时候,会发现文档里会自动生生一个字段:_id

"_id" : ObjectId("54ded4960dc51419494b4562")

mongo中,集合都必须有??_id字段,默认是ObjectId,并且必须唯一,如果插入重复的值的话,就会抛出异常。当然也可以不为ObjectId

插入一个_id1的数据:

> db.mongo.insert({_id:1,name:"wang",age: 20});

WriteResult({ "nInserted" : 1 })

再次插入一个_id1的数据就会报错:

> db.mongo.insert({_id:1,name:"fang",age: 22});

WriteResult({

    "nInserted" : 0,

    "writeError" : {

       "code" : 11000,

       "errmsg" : "insertDocument :: caused by :: 11000 E11000 duplicate key error index: test.mongo.$_id_  dup key: { : 1.0 }"

    }

})

我们查询mongo表中的内容,_id字段可以不为ObjectId

> db.mongo.find();

{ "_id" : ObjectId("54ded72e0dc51419494b4565"), "name" : "jack", "age" : 30 }

{ "_id" : 1, "name" : "wang", "age" : 20 }

文档的删除:

> db.mongo.find();

{ "_id" : ObjectId("54ded72e0dc51419494b4565"), "name" : "jack", "age" : 30 }

{ "_id" : 1, "name" : "wang", "age" : 20 }

删除name值为wang的文档:

> db.mongo.remove({"name":"wang"})

WriteResult({ "nRemoved" : 1 })

> db.mongo.find();

{ "_id" : ObjectId("54ded72e0dc51419494b4565"), "name" : "jack", "age" : 30 }

删除整个文档,但不是删除collection本身和索引

> db.mongo.insert({_id:1,name:"fang",age: 22});

WriteResult({ "nInserted" : 1 })

> db.mongo.find();

{ "_id" : ObjectId("54ded72e0dc51419494b4565"), "name" : "jack", "age" : 30 }

{ "_id" : 1, "name" : "fang", "age" : 22 }

> db.mongo.remove({})

WriteResult({ "nRemoved" : 2 })

> show collections

mongo

system.indexes

things

> db.mongo.find();

>  

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多