English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Kapitel werden wir lernen, wie man Dokumente in die MongoDB-Sammlung einfügt.
Um Daten in die MongoDB-Sammlung einzufügen, müssen Sie die MongoDB-insert() oder save()Methode.
insert()Die Grundgrammatik des Befehls ist wie folgt-
> db.COLLECTION_NAME.insert(document)
> db.users.insert({ ... _id : ObjectId("507f191e810c19729de860ea"), ... titel: "MongoDB Übersicht", ... beschreibung: "MongoDB ist keine sql-Datenbank", ... von: "Grund教程", ... url: "https://de.oldtoolbag.com", ... tags: ['mongodb', 'database', 'NoSQL'], ... likes: 100 ... }) WriteResult({ "nInserted": 1 ) >
Dies ist der Name der Sammlung, die wir im vorherigen Kapitel erstellt haben mycol . Wenn die Sammlung in der Datenbank nicht existiert, dann erstellt MongoDB diese Sammlung und fügt den Dokument hinzu.
Wenn das _id-Parameter im eingefügten Dokument nicht angegeben wird, dann分配MongoDB für dieses Dokument einen eindeutigen ObjectId.
_id ist12Die Hexadezimalziffern der Bytes sind für jeden Dokument in der Sammlung einzigartig.12Bytes werden wie folgt zugeordnet:
_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes incrementer)
Man kann auch Dokument-Arrays an die insert()-Methode übergeben, wie folgt:
> db.createCollection("post") > db.post.insert([ { Titel: "MongoDB Übersicht", Beschreibung: "MongoDB ist keine SQL-Datenbank", by: "基础教程" url: "http://de.oldtoolbag.com", tags: ["mongodb", "database", "NoSQL"], likes: 100 } { title: "NoSQL Database" description: "NoSQL数据库没有表" by: "基础教程" url: "http://de.oldtoolbag.com", tags: ["mongodb", "database", "NoSQL"], likes: 20, comments: [ { user: "user"1", message: "My first comment", dateCreated: new Date(2013,11,10,2,35), wie: 0 } ] } }) BulkWriteResult({ "writeErrors": [], "writeConcernErrors": [], "nInserted": 2, "nUpserted": 0, "nMatched": 0, "nModified": 0, "nRemoved": 0, "upserted": [], ) >
Um Dokumente einzufügen, können Sie auchdb.post.save(document). Wenn Sie _id im Dokument nicht angeben _iddann der Methode save()entsprichtMethode insert()gleich. Wenn ein _id angegeben wird, ersetzt es den gesamten Datenbestand des Dokuments, das durch die Methode save() mit dem angegebenen _id ersetzt wird.
Wenn Sie nur ein Dokument in die Sammlung einfügen möchten, können Sie diese Methode verwenden.
Die Grundgrammatik des Befehls insertOne() ist wie folgt:
> db.COLLECTION_NAME.insertOne(document)
Nachfolgender Beispiel erstellt eine neue Sammlung namens empDetails und fügt einen Dokument mit der Methode insertOne() hinzu.
> db.createCollection("empDetails") { "ok": 1 }
> db.empDetails.insertOne( { First_Name: "Radhika", Last_Name: "Sharma", Date_Of_Birth: "1995-09-26", e_mail: "[email protected]", phone: "9848022338" ) { "acknowledged": true, "insertedId": ObjectId("5dd62b4070fb13eec3963bea") } >
Sie können die Methode insertMany() verwenden, um mehrere Dokumente einzufügen. Für diese Methode müssen Sie ein Dokumentenset übergeben.
Nachfolgender Beispiel verwendet die Methode insertMany() zur Eingabe von drei verschiedenen Dokumenten in die Sammlung empDetails.
> db.empDetails.insertMany( [ { First_Name: "Radhika", Last_Name: "Sharma", Date_Of_Birth: "1995-09-26", e_mail: "[email protected]", phone: "9000012345" } { First_Name: "Rachel", Last_Name: "Christopher", Date_Of_Birth: "1990-02-16", e_mail: "[email protected]", phone: "9000054321" } { First_Name: "Fathima", Last_Name: "Sheik", Date_Of_Birth: "1990-02-16", e_mail: "[email protected]", phone: "9000054321" } ] ) { "acknowledged": true, "insertedIds": [ ObjectId("5dd631f270fb13eec3963bed"), ObjectId("5dd631f270fb13eec3963bee"), ObjectId("5dd631f270fb13eec3963bef") ] } >