MongoDB關係的使用

2021-10-12 05:00:39 字數 767 閱讀 9088

mongodb 的關係表示多個文件之間在邏輯上的相互聯絡。

文件間可以通過嵌入和引用來建立聯絡。

mongodb 中的關係可以是:

1:1 (1對1)

1: n (1對多)

n: 1 (多對1)

n: n (多對多)

以下是 address 文件的簡單結構:

,]

}

>db.users.

findone(,

)

引用式關係是設計資料庫時經常用到的方法,這種方法把使用者資料文件和使用者位址資料文件分開,通過引用文件的 id 欄位來建立關係。

以上例項中,使用者文件的 address_ids 字段包含使用者位址的物件id(objectid)陣列。

我們可以讀取這些使用者位址的物件id(objectid)來獲取使用者的詳細位址資訊。

這種方法需要兩次查詢,第一次查詢使用者位址的物件id(objectid),第二次通過查詢的id獲取使用者的詳細位址資訊。

>

var result = db.users.

findone(,

)>

var addresses = db.address.

find(}

)

MongoDB 文件物件間的關係

mongodb雖然是非關係型資料庫,但並不意味著mongodb中的文件物件之間無法建立關係 當然這些物件之間也可以沒有關係 建立關係的思想和關係型資料庫大體一樣,但也有不同的地方。在mongodb中可以通過內嵌文件的形式體現出一對一的關係,比如夫妻 乙個文件物件一旦被嵌入到另乙個文件物件中就絕不可能...

MongoDB 事務,複製和分片的關係

本文嘗試對mongo的複製和分布式事務的原理進行描述,在必要的地方,對實現的正確性進行論證,希望能為mongodb核心愛好者提供一些參考。如何選擇更早的時間點,需要滿足下面的規則,寫規則 事務執行順序如下所示是 t1 commited and committs 1 t2 start t2 set c...

mongodb的使用(一)

啟動 在shell中輸入mongo即可 建立資料庫 use database name database name資料庫的名稱,不存在則建立,否則將切換到資料庫如建立資料庫runoob use runoob show dbs 顯示所有資料庫 db.runoob.insert 向資料庫存入資料刪除資料...