我正在學習MEAN框架。我不明白爲什麼mongodb如此受歡迎以至於它是在框架中構建的,並且您無法輕鬆更改數據庫(或者我可以嗎?)。MEAN - 在mongodb和關係數據庫中的數據庫
我的問題是。
- 爲什麼在MEAN框架中使用mongodb?
- 爲什麼noSql和Sql數據庫之間沒有任何選擇?
- MEAN框架(使用mongodb)僅適用於某些類型的Web項目或任何類型的Web項目?
- 如何在mongodb中創建這個示例數據庫?
如果我有例如,這關係數據庫:
User
id
name
Car
id
user_id
car_make_id
name
CarMake
id
Name
比它可以輕鬆進行查詢:
- 讓我看看用戶和他的汽車。一個帶連接的查詢。
- 向我展示我的系統,車主及其類型中的所有車輛。一個帶連接的查詢。
當我創建這個數據庫MongoDB中:
- 我失去了真正的數據庫事務的能力。
- mongodb中應該如何最好地實現這個數據庫?我可以使用相同的數據庫結構,但它會變慢,因爲當我創建上述查詢時,我將不得不向數據庫發出更多請求。或者使用$ lookup的查詢將比sql數據庫中的實際連接慢 - 是嗎?
我可以改變數據庫結構這樣
User
id:
name:
cars: []
Car
id:
car_make_id:
name:
CarMake
id:
Name:
或者,我可以改變數據庫的結構是這樣的。汽車列表嵌入用戶內部。
User
id:
name:
cars:
[
{
id:
car_make_id:
name:
}
]
CarMake
id:
Name:
但我該如何得到:向我展示所有汽車在我的系統,業主和他們的類型。你能幫助我以mongodb的方式看世界嗎?
在此數據庫結構中。我如何查看系統中的所有車輛?我必須檢索所有用戶並閱讀所有嵌入式汽車? –
不可以。您可以將不同的命令與'Cars.name'一起使用。否則你可以使用聚合框架來實現。但是當你設計數據庫時。首先設計應用程序和數據庫。 (當我們使用關係型數據庫時,會發生相反的事情。) –
請考慮在你得到幫助時接受答案。它會幫助其他同類問題。 –