1. 數(shù)據(jù)庫(kù)操作看完前面的文章,大家應(yīng)該把環(huán)境搭建好了,下面我們就開始學(xué)習(xí)MongoDB的一些基本操作了。 首先我們要了解的一些要點(diǎn):
其次就是SQL術(shù)語(yǔ)和MongoDB術(shù)語(yǔ)的對(duì)比:
學(xué)過MySQL的同學(xué)就很好對(duì)比了,三個(gè)主要的:數(shù)據(jù)庫(kù)、集合、文檔
文檔:就是一個(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ù)是: 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ù) >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首先檢查上限集合 例子: 沒有使用選項(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 > |
|
|