MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Erstellen Sie ein Skript zum Erstellen von MongoDB-Sammlungen aus der Mongo-Shell?

Erstellen Sie mit den folgenden Befehlen eine Datei mit dem Namen "my_scripts.js". Dieses JavaScript definiert die Daten und Befehle zum Erstellen von zwei Sammlungen (dogs und cats ), ihre Daten (Dokumente als JSON) und die Indizes (Indizes werden auf dem name erstellt Feld der Sammlung).

my_scripts.js:

let dogDocs = [
  {
    name: "pooch",
    breed: "poodle",
    weight: "6 lbs"
  },
  {
    name: "mutt",
    breed: "bulldog",
    weight: "10 lbs"
  }
];

let catDocs = [
  {
    name: "minni", 
    breed: "persian",
    color: "white"
  },
  {
    name: "tinkle",
    breed: "bombay",
    color: "black"
  }
];

let dogIndex = { name : 1 };
let catIndex = { name : 1 };

let collInfoObjs = [ 
  { coll: "dogs", data: dogDocs, index: dogIndex }, 
  { coll: "cats", data: catDocs, index: catIndex } 
];

for (obj of collInfoObjs) {
    db[obj.coll].insertMany(obj.data);
    db[obj.coll].createIndex(obj.index);
}


Führen Sie die Skriptdatei aus:

Aus der Mongo-Shell Führen Sie das Skript aus als (Sie können den Dateipfad mit load angeben Befehl):

mongo > load("my_script.js");

Nachdem das Skript ausgeführt wurde, können Sie die folgenden Befehle einzeln verwenden, um die Sammlungen, ihre Dokumente und die Indizes zu überprüfen:

db.dogs.find();
db.cats.find();
db.dogs.getIndexes();
db.cats.getIndexes();

Beachten Sie, dass die Dokumente eine eindeutige _id haben Feld (vom Typ ObjectId ) erstellt, wenn Sie _id nicht angeben in den Eingabe-JSON-Daten.