MongoDB Befehle

https://docs.mongodb.com/manual/tutorial/getting-started/

Datenbank + Collection

BefehlFunktion
use db_namezu Datenbank wechseln
dbzeigt aktuelle Datenbank
show dbszeigt alle Datenbanken (bereits angelegt: admin, config, local)
show collectionszeigt alle Collections der aktuellen Datenbank
db.collection_name.drop()Collection löschen
  • Anlegen: Datenbank und Collection wird automatisch erzeugt bei erstem Eintrag
  • existierende DBs: admin, config, local für Management der MongoDB

Daten CRUD Operationen

BefehlFunktion
db.collection_name.insertOne(JSObject)Dokument als JavaScript Objekt in Collection speichern
db.collection_name.insertMany([JSObject1, JSObject2, ...])Dokument als Liste von JavaScript Objekten in Collection speichern
db.collection_name.find(JSObjectFind)JavaScript Objekt mit Eigenschaften, nach denen in den Dokumenten der Collection gesucht werden soll
db.collection_name.find()zeigt alle Dokumente in einer Collection an
db.collection_name.replaceOne(JSObjectFind, JSObject)Ersetzt das erste Dokument, welches den Angaben im ersten JavaScript Objekt entspricht, mit dem zweiten JavaScript Objekt
db.collection_name.deleteOne(JSObjectFind)Löscht das erste Dokument, welches den Angaben im JavaScript Objekt entspricht
db.collection_name.deleteMany(JSObjectFind)Löscht alle Dokumente, welche den Angaben im JavaScript Objekt entsprechen

weitere, z. B. auch updateOne

Beispiel

show dbs

Kommandozeile> show dbs
admin       0.000GB
config      0.000GB
local       0.000GB

use university

Kommandozeile> use university
switched to db university

db.student.insertOne({studentNr: 123456, firstName: "Klaus", lastName: "Meng", semester: 2, faculty: "DM", course: "OMB"})

Kommandozeile> db.student.insertOne({studentNr: 123456, firstName: "Klaus", lastName: "Meng", semester: 2, faculty: "DM", course: "OMB"})
{
        "acknowledged" : true,
        "insertedId" : ObjectId("61a26b71293da259fc388bc4")
}

db.student.insertMany([{studentNr: 234567, firstName: "Verena", lastName: "Rist", semester: 6, faculty: "DM", course: "MIB"},{studentNr: 345678, firstName: "Samantha", lastName: "Holz", semester: 1, faculty: "DM", course: "OMB"}])

Kommandozeile> db.student.insertMany([{studentNr: 234567, firstName: "Verena", lastName: "Rist", semester: 6, faculty: "DM", course: "MIB"},{studentNr: 345678, firstName: "Samantha", lastName: "Holz", semester: 1, faculty: "DM", course: "OMB"}])
{
        "acknowledged" : true,
        "insertedIds" : [
                ObjectId("61a26d0a293da259fc388bc5"),
                ObjectId("61a26d0a293da259fc388bc6")
        ]
}

db.faculty.insertMany([{name:"DM", course:["MIB", "OMB", "MKB"]}, {name:"IN"}])

Kommandozeile> db.faculty.insertMany([{name:"DM", course:["MIB", "OMB", "MKB"]}, {name:"IN"}])
{
        "acknowledged" : true,
        "insertedIds" : [
                ObjectId("61a26d59293da259fc388bc7"),
                ObjectId("61a26d59293da259fc388bc8")
        ]
}

db.student.find({studentNr: 123456})

Kommandozeile> db.student.find({studentNr: 123456})
{ "_id" : ObjectId("61a26b71293da259fc388bc4"), "studentNr" : 123456, "firstName" : "Klaus", "lastName" : "Meng", "semester" : 2, "faculty" : "DM", "course" : "OMB"}

db.lecture.insertMany([{name: "C#", faculty_id: 2, student_ids: [ObjectId("61a26b71293da259fc388bc4")]}, {name: "Zeichnen", faculty_id: 1, student_ids: [ObjectId("61a26b71293da259fc388bc4")]}])

  • student_ids: ObjectId von Student mit studentNr 123456, z. B. hier ObjectId("61a26b71293da259fc388bc4")
Kommandozeile> db.lecture.insertMany([{name: "C#", faculty_id: 2, student_ids: [ObjectId("61a26b71293da259fc388bc4")]}, {name: "Zeichnen", faculty_id: 1, student_ids: [ObjectId("61a26b71293da259fc388bc4")]}])
{
        "acknowledged" : true,
        "insertedIds" : [
                ObjectId("61a26eab293da259fc388bc9"),
                ObjectId("61a26eab293da259fc388bca")
        ]
}

db.student.replaceOne({_id: ObjectId("61a26b71293da259fc388bc4")}, {"studentNr" : 123456, "firstName" : "Klaus", "lastName" : "Meng", "semester" : 2, "faculty" : "DM", "course" : "OMB", lecture_ids:[ ObjectId("61a26eab293da259fc388bc9"), ObjectId("61a26eab293da259fc388bca")]})

  • _id: ObjectId von Student mit studentNr 123456, z. B. hier ObjectId("61a26b71293da259fc388bc4")
  • lecture_ids: ObjectIds von neu erstellten lectures bei Student mit studentNr 123456 eintragen, z. B. hier ObjectId("61a26eab293da259fc388bc9"), ObjectId("61a26eab293da259fc388bca")
Kommandozeile> db.student.replaceOne({_id: ObjectId("61a26b71293da259fc388bc4")}, {"studentNr" : 123456, "firstName" : "Klaus", "lastName" : "Meng", "semester" : 2, "faculty" : "DM", "course" : "OMB", lecture_ids:[ ObjectId("61a26eab293da259fc388bc9"), ObjectId("61a26eab293da259fc388bca")]})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

db.student.find({studentNr: 123456})

Kommandozeile> db.student.find({studentNr: 123456})
{ "_id" : ObjectId("61a26b71293da259fc388bc4"), "studentNr" : 123456, "firstName" : "Klaus", "lastName" : "Meng", "semester" : 2, "faculty" : "DM", "course" : "OMB", "lecture_ids" : [ ObjectId("61a26eab293da259fc388bc9"), ObjectId("61a26eab293da259fc388bca") ] }

db.faculty.find()

Kommandozeile> db.faculty.find()
{ "_id" : ObjectId("61a26d59293da259fc388bc7"), "name" : "DM", "course" : [ "MIB", "OMB", "MKB" ] }
{ "_id" : ObjectId("61a26d59293da259fc388bc8"), "name" : "IN" }

db.student.find({course: "OMB"})

Kommandozeile> db.student.find({course: "OMB"})
{ "_id" : ObjectId("61a26b71293da259fc388bc4"), "studentNr" : 123456, "firstName" : "Klaus", "lastName" : "Meng", "semester" : 2, "faculty" : "DM", "course" : "OMB", "lecture_ids" : [ ObjectId("61a26eab293da259fc388bc9"), ObjectId("61a26eab293da259fc388bca") ] }
{ "_id" : ObjectId("61a26d0a293da259fc388bc6"), "studentNr" : 345678, "firstName" : "Samantha", "lastName" : "Holz", "semester" : 1, "faculty" : "DM", "course" : "OMB" }

db.student.find({course: "OMB", semester: 1})

Kommandozeile> db.student.find({course: "OMB", semester: 1})
{ "_id" : ObjectId("61a26d0a293da259fc388bc6"), "studentNr" : 345678, "firstName" : "Samantha", "lastName" : "Holz", "semester" : 1, "faculty" : "DM", "course" : "OMB" }

show collections

Kommandozeile> show collections
faculty
lecture
student