Dino Geek, versucht dir zu helfen

Wie stelle ich eine Referenzbeziehung in MongoDB her?


In MongoDB gibt es zwei Ansätze zur Konstruktion von Beziehungen zwischen Daten:
1) In-Embedding-Ansatz und
2) Referenzansatz.

Im Falle des Referenzansatzes wird eine Beziehung zwischen Daten durch das Speichern der Referenz-ID von einem Datensatz in einem anderen Datensatz hergestellt. Hier ist ein einfacher Prozess, wie Sie eine Referenzbeziehung in MongoDB erstellen können:

1. Erstellen Sie zunächst zwei Sammlungen. Zum Beispiel `autoren` und `buecher`.

```bash
db.createCollection(‘autoren’)
db.createCollection(‘buecher’)
```

2. Fügen Sie Daten in die Sammlung `autoren` ein und speichern Sie die generierte ID(`_id`).

```bash
let autor = { name: “Autor Name”, email: “autor@email.com” }
let result = db.autoren.insertOne(autor)
let autorId = result.insertedId
```

3. Nun fügen Sie in die `buecher` Sammlung ein Dokument ein und setzen Sie die `autorId` als `autor_id` in das Dokument.

```bash
db.buecher.insertOne({ titel: “Buchtitel”, autor_id: autorId})
```

Jetzt wurde eine referenzielle Beziehung zwischen `buecher` und `autoren` erstellt. Falls Sie Informationen über das Buch und den Autor abrufen möchten, können Sie die `autor_id` aus dem `buecher` Dokument verwenden und das zugehörige `autoren`-Dokument suchen.

```bash
let buch = db.buecher.findOne()
let autor = db.autoren.findOne({ _id: buch.autor_id})
```

Es ist wichtig zu bedenken, dass MongoDB eine NoSQL-Datenbank ist, und der Einsatz des Referenzansatzes kann dazu führen, dass Sie mehrere Abfragen ausführen müssen, um alle benötigten Daten zu erhalten. Das kann die Leistung beeinträchtigen. Deshalb wird für Daten, die häufig zusammen abgerufen werden, der eingebettete Ansatz empfohlen.


Erstellen Sie einfach Artikel, um Ihr SEO zu optimieren
Erstellen Sie einfach Artikel, um Ihr SEO zu optimieren





DinoGeek bietet einfache Artikel über komplexe Technologien

Möchten Sie in diesem Artikel zitiert werden? Es ist ganz einfach, kontaktieren Sie uns unter dino@eiki.fr

CSS | NodeJS | DNS | DMARC | MAPI | NNTP | htaccess | PHP | HTTPS | Drupal | WEB3 | LLM | Wordpress | TLD | Domain | IMAP | TCP | NFT | MariaDB | FTP | Zigbee | NMAP | SNMP | SEO | E-Mail | LXC | HTTP | MangoDB | SFTP | RAG | SSH | HTML | ChatGPT API | OSPF | JavaScript | Docker | OpenVZ | ChatGPT | VPS | ZIMBRA | SPF | UDP | Joomla | IPV6 | BGP | Django | Reactjs | DKIM | VMWare | RSYNC | Python | TFTP | Webdav | FAAS | Apache | IPV4 | LDAP | POP3 | SMTP

| Whispers of love (API) | Déclaration d'Amour |






Rechtliche Hinweise / Allgemeine Nutzungsbedingungen