小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

MongoDB(三):數(shù)據(jù)庫(kù)操作、集合操作

 丹楓無(wú)跡 2022-04-28

1. 數(shù)據(jù)庫(kù)操作

看完前面的文章,大家應(yīng)該把環(huán)境搭建好了,下面我們就開始學(xué)習(xí)MongoDB的一些基本操作了。

首先我們要了解的一些要點(diǎn):

MongoDB將數(shù)據(jù)存儲(chǔ)為一個(gè)文檔,數(shù)據(jù)結(jié)構(gòu)由鍵值對(duì)(key=>value)組成

MongoDB文檔類似于JSON對(duì)象,字段值可以包含其他文檔、數(shù)組、文檔數(shù)組

其次就是SQL術(shù)語(yǔ)和MongoDB術(shù)語(yǔ)的對(duì)比:

學(xué)過MySQL的同學(xué)就很好對(duì)比了,三個(gè)主要的:數(shù)據(jù)庫(kù)、集合、文檔

集合就是MySQL中的表

文檔就是MySQL中的行

文檔:就是一個(gè)對(duì)象,由鍵值對(duì)構(gòu)成,是json的擴(kuò)展Bson形式。

{'name':'guojing','gender':''}

集合:類似于MySQL中的表,儲(chǔ)存多個(gè)文檔,結(jié)構(gòu)不固定,如可以儲(chǔ)存如下文檔在一個(gè)集合中。

{'name':'guojing','gender':''}
{'name':'huangrong','age':'18'}
{'book':'shuihuzhuan','heros':'108'}

數(shù)據(jù)庫(kù):是一個(gè)集合的物理容器,一個(gè)數(shù)據(jù)庫(kù)中可以包含多個(gè)文檔。

一個(gè)服務(wù)器通常有多個(gè)數(shù)據(jù)庫(kù)。

1.1 創(chuàng)建數(shù)據(jù)庫(kù)

MongoDB使用use DATABASE_NAME命令來創(chuàng)建數(shù)據(jù)庫(kù)。如果指定的數(shù)據(jù)庫(kù)DATABASE_NAME不存在,則該命令將創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù),否則返回現(xiàn)有的數(shù)據(jù)庫(kù)。

語(yǔ)法:

use DATABASE_NAME

如果要?jiǎng)?chuàng)建一個(gè)名稱為newdb的數(shù)據(jù)庫(kù),那么使用use DATABASE_NAME語(yǔ)句將如下所示:

> use newdb
switched to db newdb

1.2 查看當(dāng)前選擇的數(shù)據(jù)庫(kù)

輸入db命令就可查詢:

>db
newdb

1.3 查看數(shù)據(jù)庫(kù)列表

如果要檢查數(shù)據(jù)庫(kù)列表,請(qǐng)使用命令show dbs。

>show dbs
local     0.000025GB
test      0.00002GB

創(chuàng)建的數(shù)據(jù)庫(kù)newdb不在列表中。要顯示數(shù)據(jù)庫(kù),需要至少插入一個(gè)文檔,空的數(shù)據(jù)庫(kù)是不顯示出來的。

>db.items.insert({"name":"yiibai tutorials"})
>show dbs
local     0.00005GB
test      0.00002GB
newdb      0.00002GB

在 MongoDB 中默認(rèn)數(shù)據(jù)庫(kù)是:test。 如果您還沒有創(chuàng)建過任何數(shù)據(jù)庫(kù),則集合/文檔將存儲(chǔ)在test數(shù)據(jù)庫(kù)中。

1.4 刪除數(shù)據(jù)庫(kù)

MongoDB中的db.dropDatabase()命令用于刪除現(xiàn)有的數(shù)據(jù)庫(kù)。 

db.dropDatabase()

這將刪除當(dāng)前所選數(shù)據(jù)庫(kù)。 如果沒有選擇任何數(shù)據(jù)庫(kù),那么它將刪除默認(rèn)的test數(shù)據(jù)庫(kù)。

刪除例子:

首先,使用命令show dbs檢查可用數(shù)據(jù)庫(kù)的列表。 

>show dbs
local      0.00025GB
newdb       0.0002GB
test       0.00012GB
>

如果要?jiǎng)h除新數(shù)據(jù)庫(kù)newdb,那么dropDatabase()命令將如下所示:

>use newdb
switched to db newdb
>db.dropDatabase()
>{ "dropped" : "newdb", "ok" : 1 }
>

現(xiàn)在檢查數(shù)據(jù)庫(kù)列表

>show dbs
local      0.00025GB
test       0.0002GB
>

2. 集合操作

2.1 創(chuàng)建集合

MongoDB 的db.createCollection(name , options)方法用于在MongoDB 中創(chuàng)建集合。 

語(yǔ)法:

db.createCollection(name, options)

在命令中,name是要?jiǎng)?chuàng)建的集合的名稱。options是一個(gè)文檔,用于指定集合的配置。

options參數(shù)是可選的,因此只需要指定集合的名稱。 以下是可以使用的選項(xiàng)列表:

在插入文檔時(shí),MongoDB首先檢查上限集合capped字段的大小,然后檢查max字段。

例子: 

沒有使用選項(xiàng)的createCollection()方法的基本語(yǔ)法如下 :

>use test
switched to db test
>db.createCollection("mycollection")
{ "ok" : 1 }
>

可以使用命令show collections檢查創(chuàng)建的集合。

>show collections
mycollection

以下示例顯示了createCollection()方法的語(yǔ)法,其中幾個(gè)重要選項(xiàng)

> db.createCollection("mycol", {capped : true, autoIndexId : true, size : 6142800, max : 10000 })
{ "ok" : 1 }
>

在MongoDB中,不需要?jiǎng)?chuàng)建集合。當(dāng)插入一些文檔時(shí),MongoDB 會(huì)自動(dòng)創(chuàng)建集合。

>db.newcollection.insert({"name" : "yiibaitutorials"})
>show collections
mycol
newcollection
mycollection
>

2.2 刪除集合

MongoDB 的db.collection.drop()用于從數(shù)據(jù)庫(kù)中刪除集合。

語(yǔ)法:

db.COLLECTION_NAME.drop()

例子:

首先,檢查數(shù)據(jù)庫(kù)test中可用的集合。

>use test
switched to db test
> show collections
mycol
mycollection
newcollection
>

現(xiàn)在刪除名稱為mycollection的集合。

>db.mycollection.drop()
true
>

再次檢查當(dāng)前數(shù)據(jù)庫(kù)的集合列表,如下:

> show collections
mycol
newcollection
>

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多