LoslegenKostenlos starten

Integrierte Schemavalidierung in MongoDB

Auch wenn MongoDB ein flexibles Schema hat, bringt es umfangreiche Funktionen zur Schemavalidierung mit. Beim Erstellen einer Collection kannst du ein JSON Schema angeben, das beschreibt, welchem Format Dokumente folgen sollen.

Hinweis: Wir verwenden hier einen zufällig generierten Collection-Namen, damit du mit mehreren Einsendungen frei experimentieren kannst.

Diese Übung ist Teil des Kurses

<Kurs>Einführung in MongoDB mit Python</Kurs>
Kurs ansehen

Übungsanweisungen

  • Passe den Aufruf von .create_collection() an: title soll ein "string" sein.
  • Füge den Film in deine neu erstellte Movies-Collection mov ein.
  • Prüfe das Ergebnis des Einfügens, um sicherzustellen, dass es erfolgreich war.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# Create collection with schema spec
mov = client.film.create_collection(
  f"movies_{random.randint(1, 100)}",
  validator={
    "$jsonSchema": {
      "required": ["title", "genre", "release_year", "rating"],
      "properties": {
        "title": { "bsonType": ____ },
        "genre": { 
          "bsonType": "array",
          "items": { "bsonType": "string" }
        },
        "release_year": { "bsonType": "int" },
        "rating": { "bsonType": "double" },
        "won_oscar": { "bsonType": "bool" }
      }
    }
  }
)

# Insert movie
res = mov.____({
    "title": "the avengers",
    "genre": ["action", "adventure", "sci-fi"],
    "release_year": 2012,
    "rating": 8.0
})

# Print result
print(____)
Code bearbeiten und ausführen