Bagaimana cara mendesain tabel seperti ini di mongodb?
Pertama, untuk memperjelas beberapa konvensi penamaan. MongoDB menggunakan collections
bukannya tables
.
Saya pikir tidak ada kunci asing!
Ambil model berikut:
student
{
_id: ObjectId(...),
name: 'Jane',
courses: [
{ course: 'bio101', mark: 85 },
{ course: 'chem101', mark: 89 }
]
}
course
{
_id: 'bio101',
name: 'Biology 101',
description: 'Introduction to biology'
}
Jelas daftar kursus Jane menunjuk ke beberapa kursus tertentu. Basis data tidak menerapkan batasan apa pun ke sistem (yaitu:batasan kunci asing ), jadi tidak ada "penghapusan berjenjang" atau "pembaruan berjenjang". Namun, database memang berisi informasi yang benar.
Selain itu, MongoDB memiliki standar DBRef yang membantu menstandardisasi pembuatan referensi ini. Faktanya, jika Anda melihat tautan itu, ada contoh serupa.
Bagaimana saya bisa menyelesaikan tugas ini?
Untuk lebih jelasnya, MongoDB tidak relasional. Tidak ada standar "bentuk normal". Anda harus memodelkan database Anda sesuai dengan data yang Anda simpan dan kueri yang ingin Anda jalankan.