激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - MongoDB - MongoDB教程之入門基礎知識

MongoDB教程之入門基礎知識

2020-04-30 15:45MongoDB之家 MongoDB

這篇文章主要介紹了MongoDB教程之入門基礎知識,本文講解了文檔的注意事項、使用多個集合的必要性、集合的命名注意事項、數據庫、MongoDB的啟動、Shell的使用小技巧等內容,需要的朋友可以參考下

一、文檔的注意事項:

1.  鍵值對是有序的,如:{ "name" : "stephen", "genda" : "male" } 不等于 { "genda" : "male", "name" : "stephen" }
2.  文檔信息是大小寫敏感的,如:{ "name" : "stephen" } 不等于 { "Name" : "stephen" }
3.  文檔信息是區分類型的,如:{ "age" : 30 } 不等于 { "age" : "30" }
4.  文檔中不能出現重復鍵,如:{ "name" : "stephen", "name" : "liu" }

二、使用多個集合的必要性:

1.  如果把各種模式的文檔存放在一個集合中,對于開發者來說是非常災難的。因為在獲取到查詢結果之后,就需要手工編寫代碼過濾不同類型的文檔了。
2.  會使查詢效率降低。試想一下,假設某個模式的文檔的數據量相對較少,如果仍然將其放到一個通用的大集合中,其查詢效率勢必會大大低于將其放到獨立的集合中。
3.  在創建索引時,如果所有的文檔均為同一模式,那么索引的利用率將會更加高效。

三、集合的命名注意事項:
1.  集合名不能是空字符串""。
2.  不要以system開頭,這一般是為系統保留的,如system.users集合中保存了數據庫的用戶信息,而system.namespace集合中保留了數據庫集合的信息。
3.  不要在集合名里面包含'$'字符。
4.  子集合只是一種較好的集合規劃方式,如blog.posts和blog.anthurs,實際上它們和blog集合之間沒有任何關系,甚至blog集合可以不存在。

四、數據庫:

在同一個MongoDB服務器中可以存在多個數據庫,每個不同的數據庫存儲在不同的文件中。又由于數據庫名和文件名是綁定的,因此數據庫名會有一些限制。
1.  不能是空字符""。
2.  全部小寫且不超過64字節。
3.  不得含有文件名命名中的非法字符。
4.  admin數據庫是管理數據庫,如果某個用戶位于該數據庫中,他將自動繼承所有數據庫權限。一些特定的服務器命令也只能從這個數據庫運行。
5.  local這個數據庫永遠不會被復制,只是用于存儲限于本地單臺服務器的任意集合。
6.  數據庫名.集合名,表示該集合的完全限定名,其長度不要超過121自己。

五:MongoDB的啟動:

1.  直接執行mongod即可,在沒有任何命令行參數的情況下,服務器的主機中必須包含/data/db目錄,對于Windows而言,其缺省目錄則為服務程序所在驅動器的\data\db。如D盤,則為D:\data\bin。缺省監聽端口為27017。
2.  MongoDB自帶了一個JavaScript Shell,可以從命令行與MongoDB交互。如:mongo。這個Shell工具可以直接執行簡單的數學運算。如:

復制代碼 代碼如下:

    > x = 200
    200
    > x /5
    40
    --還可以調用JavaScript的標準庫。
    > new Date("2012/05/05")
    ISODate("2012-05-04T16:00:00Z")
    > "Hello World".replace("World", "MongoDB")
    Hello MongoDB
    --定義和調用自定義的JavaScript函數。
    > function factorial(n) {
    ... if (n <= 1) return 1
    ... return n * factorial(n - 1)
    ... }
    > factorial(5)
    120

 

3.  在Shell客戶端插入MongoDB的文檔,如:

 

復制代碼 代碼如下:

    > post = { "title" : "my blog post", "content" : "Here's my blog", "date" : new Date() }
    {
         "title" : "my blog post",
         "content" : "Here's my blog",
         "date" : ISODate("2012-06-04T07:38:51.345Z")
    }
    > db.blog.insert(post)
    > db.blog.find()
    { "_id" : ObjectId("4fcc661de4bcbac15b3d9e3a"), "title" : "my blog post", "content" : "Here's my blog",
    "date" : ISODate("2012-06-04T07:38:51.345Z") }

 

4.  在Shell客戶端查詢文檔,如:

 

復制代碼 代碼如下:

    > db.blog.findOne()
    {
         "_id" : ObjectId("4fcc661de4bcbac15b3d9e3a"),
         "title" : "my blog post",
         "content" : "Here's my blog",
         "date" : ISODate("2012-06-04T07:38:51.345Z")
    }

 

5.  在Shell中更新文檔,如:

 

復制代碼 代碼如下:

    --需要先更新post變量的內容,即先增加了一個comments的鍵,其值為空數組。
    > post.comments = []
    [ ]
    --update的第一個參數是條件,第二個參數是待更新的值。
    > db.blog.update({ "title" : "my blog post"}, post)
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fcc661de4bcbac15b3d9e3a"),
         "title" : "my blog post",
         "content" : "Here's my blog",
         "date" : ISODate("2012-06-04T07:38:51.345Z"),
         "comments" : [ ]
    }


6.  在Shell客戶端中刪除,如:

復制代碼 代碼如下:

    --如果remove中沒有條件,則清除集合中的全部數據。
    > db.blog.remove( { title:"my blog post"})
    > db.blog.findOne()
    null


六、Shell的使用小技巧:

復制代碼 代碼如下:

    > show dbs  --顯示數據庫名。
    > show collections --顯示集合名
    > show users --顯示用戶名
    > db.help()  --列出數據庫的方法。
    > db.blog.help() --列出blog集合上的方法。
    > db.blog.update --可以直接看update方法的JavaScript實現代碼。

延伸 · 閱讀

精彩推薦
  • MongoDBMongoDB 內存使用情況分析

    MongoDB 內存使用情況分析

    都說 MongoDB 是個內存大戶,但是怎么知道它到底用了多少內存呢...

    MongoDB教程網10002020-09-29
  • MongoDB遷移sqlserver數據到MongoDb的方法

    遷移sqlserver數據到MongoDb的方法

    這篇文章主要介紹了遷移sqlserver數據到MongoDb的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下...

    聽楓xl9682021-01-03
  • MongoDBMongodb實現定時備份與恢復的方法教程

    Mongodb實現定時備份與恢復的方法教程

    這篇文章主要給大家介紹了Mongodb實現定時備份與恢復的方法教程,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面...

    chenjsh364522020-05-13
  • MongoDB分布式文檔存儲數據庫之MongoDB分片集群的問題

    分布式文檔存儲數據庫之MongoDB分片集群的問題

    這篇文章主要介紹了分布式文檔存儲數據庫之MongoDB分片集群的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋...

    Linux-18743072020-12-20
  • MongoDBMongoDB憑什么躋身數據庫排行前五

    MongoDB憑什么躋身數據庫排行前五

    MongoDB以比去年同期超出65.96分的成績繼續雄踞榜單前五,這個增幅在全榜僅次于PostgreSQL的77.99,而其相對于4月份的6.10分的增長也是僅次于微軟SQL Server排名...

    孫浩峰3892020-05-22
  • MongoDBmongodb基本命令實例小結

    mongodb基本命令實例小結

    這篇文章主要介紹了mongodb基本命令,結合實例形式總結分析了MongoDB數據庫切換、查看、刪除、查詢等基本命令用法與操作注意事項,需要的朋友可以參考下...

    dawn-liu3652020-05-26
  • MongoDBMongoDB安裝圖文教程

    MongoDB安裝圖文教程

    這篇文章主要為大家詳細介紹了MongoDB安裝圖文教程,分為兩大部分為大家介紹下載MongoDB和安裝MongoDB的方法,感興趣的小伙伴們可以參考一下 ...

    Yangyi.He6132020-05-07
  • MongoDBMongoDB中javascript腳本編程簡介和入門實例

    MongoDB中javascript腳本編程簡介和入門實例

    作為一個數據庫,MongoDB有一個很大的優勢——它使用js管理數據庫,所以也能夠使用js腳本進行復雜的管理——這種方法非常靈活 ...

    MongoDB教程網6982020-04-24
主站蜘蛛池模板: 91短视频版高清在线观看免费 | 欧美日韩一区二区综合 | 日韩毛片一区二区三区 | 免费播放欧美毛片 | 国产精品av久久久久久网址 | 欧美极品欧美精品欧美视频 | chengrenyingshi| 欧美成人精品一区二区 | 圆产精品久久久久久久久久久 | 久久亚色| 视频一区二区三区中文字幕 | 视频一区二区三区免费观看 | wwwcom国产 | 国产99久久久国产精品下药 | 九九热国产视频 | 777zyz色资源站在线观看 | 特级西西444www大精品视频免费看 | 黄色特级视频 | 欧美激情视频一区二区免费 | 91av久久 | 日本在线国产 | 欧美激情视频一区二区免费 | 伊人成人免费视频 | 一区二区精品在线 | 国产精品久久久久久久久久久久午夜 | 13一14毛片免费看 | 国产午夜亚洲精品午夜鲁丝片 | 亚洲精品tv久久久久久久久久 | 久久久在线免费观看 | 国产一级毛片国语版 | 特一级黄色毛片 | 麻豆视频观看 | 91麻豆精品国产91久久久点播时间 | 久久吊| 免费看搡女人无遮挡的视频 | 免费中文视频 | 九九黄色影院 | 在线看毛片的网站 | 91短视频在线 | 性欧美极品xxxx欧美一区二区 | 午夜在线观看视频网站 |