MongoDB使用primarykey创建表并引用其他表

时间:2017-11-26 14:10:40

标签: mongodb reference

我检查了其他线程,并尝试了MongoDB的代码,但没有一个是有效的,而且很多都让我很困惑,因为这是我第一次学习MongoDB,我有2个表,主题表和讲师表

Subject collection subject_id(PK)
db.subject.insert([
{"subject_id":"IT301"),     
"subject_name": "Computing",
"credit_hour": "6"},
{"subject_id":"IT302",      
"subject_name": "Networking",
"credit_hour": "6"}])

Lecturer collection lecturer_id(PK)
db.lecturer.insert(
{"lecturer_id":"12345",     
"lecturer_name": "John Doe"})

我如何参考这个主题是由这位讲师教授的?我在网上看过这样的话:

{"lecturer_id":ObjectId("12345"),       
"lecturer_name": "John Doe"
"subject_id":[IT301, IT302]}    //This line added, but it doesn't work

错误说明未定义IT301。 我只在没有任何IDE的Windows上使用commandprompt

1 个答案:

答案 0 :(得分:0)

  • MongoDB曾经有过集合(对应于SQL / Oracle中的表)。
  • 每个集合过去都有多个文件(对应不同的文件) SQL / Oracle中的表行。
  • 它曾经有不同的属性,如json({" name":" test"}) (对应于SQL / Oracle中不同的表列)。
  • MongoDB不支持主键和外键,但我们可以这样做 嵌入文件。

    对于您的问题,Lecturer集合应具有以下属性:

    {" lecturer_id":的ObjectId(" 12345&#34),
      "讲师名称":" John Doe"   " subject_id":[IT301,IT302]}

    这将帮助您从两个不同的集合中嵌入您的文档。

快乐编码