• MongoDB快速入门学习笔记3 MongoDB的文档插入操作


    1、文档的数据存储格式为BSON,类似于JSON。MongoDB插入数据时会检验数据中是否有“_id”,如果没有会自动生成。
    shell操作有insert和save两种方法。当插入一条数据有“_id”值,并且现在集合中已经有相同的值,使用insert插入时插入不进去,使用save时,会更新数据。

     1 > db.student.drop()
     2 true
     3 > db.student.insert({"_id": 1, "name":"zhangsan", "age": 28})
     4 WriteResult({ "nInserted" : 1 })
     5 > db.student.find()
     6 { "_id" : 1, "name" : "zhangsan", "age" : 28 }
     7 > db.student.insert({"_id": 1, "name":"zhangsan", "age": 27})
     8 WriteResult({
     9         "nInserted" : 0,
    10         "writeError" : {
    11                 "code" : 11000,
    12                 "errmsg" : "E11000 duplicate key error collection: zyhdb.student index: _id_ dup key: { : 1.0 }"
    13         }
    14 })
    15 > db.student.find()
    16 { "_id" : 1, "name" : "zhangsan", "age" : 28 }
    17 > db.student.save({"_id": 1, "name":"zhangsan", "age": 27})
    18 WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    19 > db.student.find()
    20 { "_id" : 1, "name" : "zhangsan", "age" : 27 }

    2、批量插入,网上的文档都说不能MongoDB不支持批量插入,现在试过可以,应该是目前的版本支持批量插入了。

     1 > db.student.insert([{"_id": 2, "name": "lisi"},{"_id": 3, "name": "wangwu"}, {"_id": 4, "name": "zhaoliu", "age": 28}])
     2 BulkWriteResult({
     3 "writeErrors" : [ ],
     4 "writeConcernErrors" : [ ],
     5 "nInserted" : 3,
     6 "nUpserted" : 0,
     7 "nMatched" : 0,
     8 "nModified" : 0,
     9 "nRemoved" : 0,
    10 "upserted" : [ ]
    11 })
    12 > db.student.find()
    13 { "_id" : 1, "name" : "zhangsan", "age" : 27 }
    14 { "_id" : 2, "name" : "lisi" }
    15 { "_id" : 3, "name" : "wangwu" }
    16 { "_id" : 4, "name" : "zhaoliu", "age" : 28 }

     

    3、循环插入:

     1 > for(var i=0; i<10; i++){db.fortest.insert({num: i})}
     2 WriteResult({ "nInserted" : 1 })
     3 > db.fortest.find()
     4 { "_id" : ObjectId("57469e80142cea1d9aeabab5"), "num" : 0 }
     5 { "_id" : ObjectId("57469e80142cea1d9aeabab6"), "num" : 1 }
     6 { "_id" : ObjectId("57469e80142cea1d9aeabab7"), "num" : 2 }
     7 { "_id" : ObjectId("57469e80142cea1d9aeabab8"), "num" : 3 }
     8 { "_id" : ObjectId("57469e80142cea1d9aeabab9"), "num" : 4 }
     9 { "_id" : ObjectId("57469e80142cea1d9aeababa"), "num" : 5 }
    10 { "_id" : ObjectId("57469e80142cea1d9aeababb"), "num" : 6 }
    11 { "_id" : ObjectId("57469e80142cea1d9aeababc"), "num" : 7 }
    12 { "_id" : ObjectId("57469e80142cea1d9aeababd"), "num" : 8 }
    13 { "_id" : ObjectId("57469e80142cea1d9aeababe"), "num" : 9 }
  • 相关阅读:
    鼠标的移动触发函数改变字体颜色
    Godaddy创始人:成就亿万富翁的10条规则
    关于编程,大学没有传授的十件事
    Using XAMPP for Local WordPress Theme Development
    100+ Resources for Web Developer
    你必须非常努力,才能看起来毫不费力
    建立WordPress博客网站——个人教程
    函数指针和指针函数
    每天写出好代码的5个建议
    LumiSoft Mail Server
  • 原文地址:https://www.cnblogs.com/zhangyanhu/p/5532688.html
Copyright © 2020-2023  润新知