MongoDB初識

來源:互聯網
上載者:User

     近年來資料庫界最紅的無疑是noSQL了,大佬oracle也開始搞了。對於非關係型資料庫我還不是很瞭解,因此開始學習比較好上手的mongoDB好了。定時的做筆記也是學習的十分好的習慣。

     1 資料庫軟體的安裝。其實MongoDB(windows版本)是綠色的。這是非常好的事情,不用等待好久去安裝了。在官網上(http://www.mongodb.org/downloads)就可以下載,然後解壓到本地就可以了。這裡我解壓到了E:\MongoDB下。

     2 資料檔案路徑。和所有的資料庫一樣,資料的儲存要有專門的資料存放區目錄(windows下叫做檔案夾的比較多)。在bin目錄底下能看到很多很多的可執行檔,其中mongod.exe就是用來設定路徑的,它的命令很簡單,這裡以E:\MongoDB\db為路徑,那麼命令這樣寫就可以了:E:\MongoDB\bin>mongod.exe --dbpath=E:\MongoDB\db。然後會出現一大堆的提示,,但是這些基本上不需要看:

      檔案如下:

      3 開始使用。資料檔案路徑設定OK以後就可以開始使用了,可執行檔:mongo.exe。這樣就會進入提示符介面,就像是sqlplus下操作oracle一樣簡單了。如:

      4 基本的資料庫操作。資料庫中最基本的操作無非就是增刪改查,不管是誰家的資料庫,要是沒有這四個功能,那就是個殘廢資料庫。Mongo中我現在還沒有見到表的概念,但是與之具有差不多相同功能的就是collection了。比如說中,test庫下就有兩個collections,其中那個foo下面有我以前插好的資料,現在查一把:

      db.foo.find()。會出現:

     

      這其中,根據我現在的理解,資料庫的記錄很像是xml的索引值,name就是鍵,而“Tom”就是索引值;age是鍵,而“30”就是索引值。collection不像表那樣,不管你Tom有沒有相關的Sex記錄,又要有Sex那一列,也不像表那樣,age列必須是同一種資料類型,否則再插入的時候會給你自動進行類型轉換。這裡的Tom沒有關於Sex的記錄,就沒有;這裡的Jerry年齡被記錄成了數字型,而Tom的年齡則是字元型,也就是說一個collection代表了一類資訊的集合,但並不是每一條記錄都完全被規定了形制,而是很自由的存在。

      閑話少敘,下面是增:db.foo.insert({"name":"Obama","age":"50","sex":"male","job":"president"});

     中間那行不慎寫錯了,不好意思。可以看到增加記錄確實有點麻煩了,因為不是給固定形制的表中插東西,所以每次都得把鍵也寫上,後面跟著索引值。

     下面是改:db.foo.update({"name":"Obama"},{"nation":"USA"});

     可以看到,改的很徹底。

     刪除操作:db.foo.remove({"nation" : "UDA"}):

     這個資料庫有點危險的地方就是增刪改操作竟然不用commit。直接就沒有了。或許在我以後的學習中能接觸到相關的內容。慢慢沉下心來學習吧。

     還有很多很強大的功能等著我去探索。希望讀到我這篇博文的人們能喜歡noSQL,喜歡Mongo。

     中的命令列工具是PowerCMD,是windows命令列工具的增強,非常好用,推薦大家使用,比黑框框要好用得多了。

      免費的,百度搜尋就能找到。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.