簡介:MongoDB是一個基于分布式文件存儲的開源數(shù)據(jù)庫系統(tǒng),它基于文檔(document,即關(guān)系型數(shù)據(jù)庫中的行的概念)進(jìn)行存儲,以key=>value的形式進(jìn)行存儲,類似于JSON的格式。mongodb是屬于文檔型的非關(guān)系型數(shù)據(jù)庫,是開源、高性能、高可用、可擴(kuò)展的。
站在用戶的角度思考問題,與客戶深入溝通,找到延邊朝鮮族網(wǎng)站設(shè)計與延邊朝鮮族網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站設(shè)計、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名申請、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋延邊朝鮮族地區(qū)。
下圖為sql術(shù)語與mongodb術(shù)語的對比:
文檔是 MongoDB 中數(shù)據(jù)的基本單元,理解起來很簡單,就是一組數(shù)據(jù)有序的放在一起就是文檔。
例如:
單鍵值文檔 {"userName":"Bertram"}
多鍵值文檔 {"_id" : ObjectId("ff4a0ead0c5fc752b13f2af441b7da12"), "name" : "Bertram", "countryName" : "Japan" }
多個文檔放在一起就是集合。
多個集合放在一起就是數(shù)據(jù)庫。
1)show dbs 顯示所有數(shù)據(jù)庫
> show dbs //新創(chuàng)建的數(shù)據(jù)庫不會顯示。需要寫入一些數(shù)據(jù),才會顯示。
admin (empty)
local 0.078GB
test 0.078GB
service 0.058GB
>
2)db 顯示當(dāng)前數(shù)據(jù)庫
> db
test
3)use 切換 或 創(chuàng)建數(shù)據(jù)庫
> use local //如果數(shù)據(jù)庫不存在,則創(chuàng)建數(shù)據(jù)庫,否則切換到指定數(shù)據(jù)庫。
switched to db local
> db
local
>
1.MongoDB 創(chuàng)建數(shù)據(jù)庫以及刪除數(shù)據(jù)庫
1) 創(chuàng)建數(shù)據(jù)庫 :use DATABASE_NAME
如果數(shù)據(jù)庫不存在,則創(chuàng)建數(shù)據(jù)庫,否則切換到指定數(shù)據(jù)庫
2)刪除數(shù)據(jù)庫 : db.dropDatabase()
2.創(chuàng)建集合以及刪除集合
1)創(chuàng)建集合: db.createCollection(name, options)
參數(shù)說明:
? name: 要創(chuàng)建的集合名稱
? options: 可選參數(shù), 指定有關(guān)內(nèi)存大小及索引的選項
2)集合刪除:
db.collection.drop()
3)如果要查看已有集合,可以使用 show collections 或show tables命令:
> show collections 或 show tables
4)實例:
下面是帶有幾個關(guān)鍵參數(shù)的 createCollection() 的用法:
創(chuàng)建集合(整個集合空間大小 10240KB, 文檔大個數(shù)為17855200個。)
> db.createCollection('replicationColletion', {'capped':true, 'size':10240, 'max':17855200})
{ "ok" : 1 }
>
在 MongoDB 中,你不需要創(chuàng)建集合。當(dāng)你插入一些文檔時,MongoDB 會自動創(chuàng)建集合。
> db.curriculum.insert({"name" : "English"})
> show collections
curriculum
3.插入文檔
1) 插入文檔:
MongoDB 使用 insert() 或 save() 方法向集合中插入文檔,語法如下:
db.serviceLECTION_NAME.insert(document)
實例:
以下文檔可以存儲在 MongoDB 的 runoob 數(shù)據(jù)庫 的 service 集合中:
>db.service.insert({title: 'MongoDB 學(xué)習(xí)',
description: 'MongoDB 是一個 Nosql 數(shù)據(jù)庫',
by: '51CTO博客',
url: 'https://docs.mongodb.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
})
以上實例中 service 是集合名,如果該集合不在該數(shù)據(jù)庫中,MongoDB 會自動創(chuàng)建該集合并插入文檔。
2)查看已插入文檔:
> db.service.find()
{ "_id" : ObjectId("5e143d32183a994d1b71c06a"), "title" : "MongoDB 學(xué)習(xí)", "description" : "MongoDB 是一個 Nosql 數(shù)據(jù)庫", "by" : "51CTO博客", "url" : "https://docs.mongodb.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
-----
3)我們也可以將數(shù)據(jù)定義為一個變量,如下所示:
> document=({title: 'MongoDB 學(xué)習(xí)',
description: 'MongoDB 是一個 Nosql 數(shù)據(jù)庫',
by: '51CTO博客',
url: 'https://docs.mongodb.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
});
執(zhí)行后顯示結(jié)果如下:
{
"title" : "MongoDB 學(xué)習(xí)",
"description" : "MongoDB 是一個 Nosql 數(shù)據(jù)庫",
"by" : "51CTO博客",
"url" : "https://docs.mongodb.com",
"tags" : [
"mongodb",
"database",
"NoSQL"
],
"likes" : 100
}
執(zhí)行插入操作:
> db.service.insert(document)
WriteResult({ "nInserted" : 1 })
插入文檔你也可以使用 db.service.save(document) 命令。如果不指定 _id 字段 save() 方法類似于 insert() 方法。如果指定 _id 字段,則會更新該 _id 的數(shù)據(jù)。
4.查詢文檔
--MongoDB 查詢文檔使用 find() 方法。
--find() 方法以非結(jié)構(gòu)化的方式來顯示所有文檔。
--MongoDB Limit() 方法
如果你需要在MongoDB中讀取指定數(shù)量的數(shù)據(jù)記錄,可以使用MongoDB的Limit方法,limit()方法接受一個數(shù)字參數(shù),該參數(shù)指定從MongoDB中讀取的記錄條數(shù)。
--count查詢記錄條數(shù)
--MongoDB Skip() 方法
除了可以使用limit()方法來讀取指定數(shù)量的數(shù)據(jù)外,還可以使用skip()方法來跳過指定數(shù)量的數(shù)據(jù),skip方法同樣接受一個數(shù)字參數(shù)作為跳過的記錄條數(shù)。
實例:
> db.service.find()
{ "_id" : ObjectId("5e143d32183a994d1b71c06a"), "title" : "MongoDB 學(xué)習(xí)", "description" : "MongoDB 是一個 Nosql 數(shù)據(jù)庫", "by" : "51CTO博客", "url" : "https://docs.mongodb.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100
> db.service.find({},{"title":"0","_id":"1"}).limit(1)
{ "_id" : ObjectId("5e143d32183a994d1b71c06a"), "title" : "MongoDB 學(xué)習(xí)" }
> db.service.find().limit(2)
{ "_id" : ObjectId("5e143edc183a994d1b71c06b"), "title" : "Python 教程", "description" : "Python 是一種編程語言", "by" : "51CTO博客", "url" : "https://www.python.org", "tags" : [ "Python", "programme", "language" ], "likes" : 120 }
注:如果查詢 find 沒有指定limit()方法中的參數(shù)則顯示集合中的所有數(shù)據(jù)。
> db.service.find().count() //查詢并統(tǒng)計結(jié)果記錄數(shù)
> db.service.count() //統(tǒng)計數(shù)據(jù)量
以下實例只會顯示第二條文檔數(shù)據(jù)
> db.service.find({},{"title":"1",_id:0}).limit(1).skip(1)
{ "title" : "Python 教程" }
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)站題目:MongoDB基本概念及使用-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://jinyejixie.com/article40/dphgeo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、企業(yè)網(wǎng)站制作、網(wǎng)站排名、定制開發(fā)、網(wǎng)站制作、域名注冊
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容