db.collection.insert( <document or array of documents>, { writeConcern: <document>, //可选字段 ordered: <boolean> //可选字段 } )db 为数据库名,如当前数据库名为“test”,则用 test 代替 db,collection 为集合名,insert() 为插入文档命令,三者之间用连接。
> db.test.insert( { item : "card", qty : 15 })在插入期间,mongod 将创建 _id 字段并为其分配唯一的 Objectld 值,这里的 mongod 是一个 MongoDB 服务器的实例,也就是 MongoDB 服务驻扎在计算机上的进程。
> db.test.find() {"_id":Objectlid("5bacac84bb5e8c5dff78dc21"), "item":"cardn, "qty":15 }这些 Objectld 值与执行操作时的机器和时间有关,因此,用户执行这段命令后的返回值与示例中的值是不同的。
> db.test.insert( { _id: 10, item: "box", qty: 20 } ) > db.test.find() { "_id" : 10, "item" : "box" , "qty": 20 }可以看到新插入文档的 id 值为设置的 id 值。
db.test.insert( [ { _id: 11, item: "pencil", qty: 50, type: "no.2" }, { item: "pen", qty: 20 }, { item: "eraser", qty: 25 } ] )查询验证,可以看到在 _id 插入期间,系统自动为第二、第三个文档创建了字段,代码如下:
> db.test.find() { "_id" : 11, "item" : "pencil", "qty" : 50, "type" : "no.2" } { "_id" : Objectld("5bacf31728b746e917e06b27"), "item" : "pen", "qty" : 20 } { "_id" : Objectld("5bacf31728b746e917e06b28"), "item" : "eraser", "qty" : 25 }
> document= ({ name: "c语言", price: 40 }) //document 为变量名. > db.test.insert(document)
> db.test.insert([ {_id:10, item:"pen", price:"20" }, {_id:12, item:"redpen", price: "30" }, {_id:11, item:"bluepen", price: "40" } ], {ordered:true} )在设置 ordered:true 时,插入的数据是有序的,如果存在某条待插入文档和集合的某文档 _id 相同的情况,_id 相同的文档与后续文档都将不再插入。在设置 ordered:false 时,除了出错记录(包括 _id 重复)外其他的记录继续插入。
db.collection.insertone ()
db.collection.insertMany()
db.test.iusertone( { item: "card", qty: 15 } );使用 insertMany() 插入多条文档的代码如下:
db.test.insertMany([ { item: "card", qty: 15 }, { item: "envelope", qty: 20 }, { item: "stamps", qty:30 } ]);
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有