android開發學習 ------- MongoDB資料庫簡單理解

來源:互聯網
上載者:User

標籤:自己   記錄   ora   關係   程式   update   tor   com   family   

首先說一下MongoDB是什嗎?

MongoDB 是一個介於關聯式資料庫和非關聯式資料庫之間的產品,是非關聯式資料庫當中功能最豐富,最像關聯式資料庫的。

MongoDB 是一個基於分布式檔案儲存體的資料庫。

NoSQL (not only sql)是對不同傳統的關係型資料庫的資料庫管理系統的統稱。不需要遵循關係型資料庫的ACID規則,

用於超大規模資料的儲存,這些類型的資料存放區不需要固定的模式,無需多餘操作就可以橫向擴充。

************************************************************************************

關係型和非關係型的對比:

RDBMS
- 高度組織化結構化資料
- 結構化查詢語言 (SQL)(SQL) (SQL)
- 資料和關係都儲存在單獨的表中。
- 資料操縱語言,資料定義語言 (Data Definition Language)
- 嚴格的一致性
- 基礎事務

NoSQL
- 代表著不僅僅是SQL
- 沒有聲明性查詢語言
- 沒有預定義的模式
-鍵 - 值對儲存,列儲存,文檔儲存,圖形資料庫
- 最終一致性,而非ACID屬性
- 非結構化和不可預知的資料
- CAP定理
- 高效能,高可用性和延展性

NoSQL強調 Key-Value   Stores  和  文檔資料庫  的優點,而不是單純的反對RDBMS。

NoSQL的優點/缺點

優點:

  • - 高可擴充性
  • - 分散式運算
  • - 低成本
  • - 架構的靈活性,半結構化資料
  • - 沒有複雜的關係

缺點:

  • - 沒有標準化
  • - 有限的查詢功能(到目前為止)
  • - 最終一致是不直觀的程式

*****************************************************************************

MongoDB是文檔儲存類型的,文檔儲存一般用類似json的格式儲存,資料結構由索引值(key=>value)對組成,儲存的內容是文檔型的。

這樣也就有有機會對某些欄位建立索引,實現關聯式資料庫的某些功能。

******************************************************************************

MongoDB的安裝配置:

這個自己百度,教程很多,https://jingyan.baidu.com/article/e52e36156372ce40c60c5194.html

http://www.runoob.com/mongodb/mongodb-window-install.html

安裝好測試成功之後,安裝視覺化檢視 Robomongo.

反正我當時在安裝配置和串連的時候碰到好多坑,當時也沒記錄,總之都是百度可以解決的問題。

*******************************************************************************

RDBMS 與 MongoDB 對應的術語:

 

  1. 文檔中的鍵/值對是有序的。
  2. 文檔中的值不僅可以是在雙引號裡面的字串,還可以是其他幾種資料類型(甚至可以是整個嵌入的文檔)。
  3. MongoDB區分類型和大小寫。
  4. MongoDB的文檔不能有重複的鍵
  5. 文檔的鍵是字串。除了少數例外情況,鍵可以使用任意UTF-8字元。  

 **************************************************************************

瞭解了上述基本概念後,最重要還是CRUD操作。

參考 https://www.cnblogs.com/garinzhang/p/mongoDB_basic_usage.html  

show dbs:顯示資料庫列表 

 

 

 show  collections:顯示當前資料庫中的集合(類似關聯式資料庫中的表)

 

 

use   db name:切換當前資料庫  -  將local切換為admin

 

db.dropDatabase(); 刪除當前資料庫

 

 db.getMongo();  查看當前db的連結機器地址

 

   顯式地建立一個新的集合:

db.createCollection(<name>, { capped: <boolean>,                              autoIndexId: <boolean>,                              size: <number>,                              max: <number>,                              storageEngine: <document>,                              validator: <document>,                              validationLevel: <string>,                              validationAction: <string>,                              indexOptionDefaults: <document> } )

 

這個命令建立名字為“user”,最大儲存空間為 5m,最多 5000 個文檔的集合.

 

 添加資料:沒有固定的列,根據添加的資料為準。

 

 

修改資料 :相當於 update user set name=‘王五‘  where  age = 33;

 

刪除資料:

 

 查詢資料:

1: select  *  from user;

2: select distict name from user;  過濾掉name中的相同資料。 

      根據列過濾資料 。

 3: select * from user where age = 15; 

4:  select * from user where age >15;

 5:  select * from user where age <22;

 

6:select * from user where age >= 25;

7: select * from user where age <= 25;

 

8:  

 9:   select  *  from user where name like ‘%呵%‘;  模糊查詢

10:  select name, age from user;

當然name也可以用true或false,當用ture的情況下河name:1效果一樣,如果用false就是排除name,顯示name以外的列資訊。

 

 11:select name, age from user where age >25;   查詢指定列的資料。

 

 12:按照年齡升序排列

 

  降序排

13:select * from user where name = ‘呵呵‘ and age = ‘85‘

14:select  top  2  *  from user;  查詢前兩條資料

 15:查詢2條以後的資料 

16:

 

android開發學習 ------- MongoDB資料庫簡單理解

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.