mongo第一天(mongo初體驗)

2022-09-14 13:48:10 字數 2276 閱讀 4911

一、mac os x上mango的安裝

1.開啟終端視窗, 貼上以下指令碼,安裝homebrew:

ruby -e "$(curl -fssl "
2. 在終端更新brew,開啟命令列輸入:

brew update
3.安裝mongodb:

brew install mongodb
4.建立/data/db目錄:

mkdir -p /data/db
5.run mongodb:

直接在命令列裡輸入:mongo,預設連線的時test資料庫,如下圖

二、基本操作

1.檢視當前被使用的資料庫:

show dbs        //

檢視當前被建立並使用的資料庫

2.insert ,在資料庫裡插入資料:

有了資料庫,下一步就是集合,這裡就取集合名為「students」,文件為json的擴充套件(bson)形式

3.find ,檢視集合裡被寫入的資料:

db.students.find().pretty();        //

美觀地顯示students目錄下所有的資料

"_id": 這個欄位是資料庫預設給我們加的guid,目的就是保證資料的唯一性

4.update ,第乙個引數為"查詢的條件",第二個引數為"更新的值"

5.remove ,刪除功能

1)使用 remove() 函式移除資料

db.students.remove(  )        //

刪除students集合下的name為xiaoming的資料

2)刪除集合中所有資料

db.students.remove({})                    //

刪除students集合中的所有資料

3)使用drop()刪除集合

db.students.drop()                        //

刪除整個students集合

返回true代表刪除成功

4)使用dropdatabase()函式刪除資料庫

db.dropdatabase()        //

刪除整個當前(test)資料庫

為了方便使用者,mongo shell(以及一些其他的程式驅動)不必編寫程式來處理查詢指標,就能通過findone()方法實現返回乙個文件的功能。findone()方法和find()方法的引數是一樣的,但它不是返回乙個指標,而是返回資料庫中滿足條件的第乙個文件,或者在沒有滿足條件文件的情況下返回null。

下面以查詢滿足"name=='mongo'"的第乙個文件為例。有很多種方法可以實現,包括呼叫next()方法(在判斷非空之後),或者將指標當成陣列返回第乙個位置上(下標為0)的元素。然而,相比之下findone()是最簡便的:

>printjson(db.things.findone())   

這是一種更有效的方法,因為使用者只會收到從資料庫返回的唯一乙個物件,所以能大大減少資料庫和網路的負荷。它和查詢find().limit(1)是等效的。

下面是乙個針對_id查詢的例子:

>var doc=db.things.findone()  

>doc

>

從這個例子也可以看出,findone()方法返回的是文件物件,而不是指標。

初涉R語言第一天

r語言連線mysql資料庫 library rmysql con dbconnect mysql user userid password pswd host hostname,client.flag client multi result sql select from num rows dbge...

mysql 第一天 MySQL 系列第一天

mysql 系列第一天這篇文章是黑馬程式設計師 mysql 教程的筆記,好好學習哦。和 mysql 資料庫的互動 客戶端單向連線認證 連線伺服器,認證身份。mysql 資料庫屬於 c s 架構,所以開啟伺服器程式後,需要通過客戶端連線它。mysql 會自帶乙個客戶端程式,可以直接輸入賬號和密碼即可連...

上班第一天

上班第一天啊,沒有去上班。早上起的很早,快走的時候突然很不想去。最後決定不去了。早上肯定也沒有什麼事情,無非就是開會,改革之類的話,這種話年年都說,年年都是老樣子。小寶說今天他訂婚,早上還去上班,誰知道是真是假呢。今天是正月初八,30年前我爸和我媽結婚了。現在過年只剩下最重要的一件事情,陪爸媽坐坐,...