MongoDB的安裝及CURD操作
MongoDB的下載地址:http://www.mongodb.org/downloads MongoDB有32bit和64bit兩個版本,32bit只能存放2GB資料。我們選擇64bit版進行下載。
下載完成之後就行安裝。不再贅述。
啟動MongoDB伺服器
開啟windows命令列,進入安裝目錄:
然後,使用命令 mongod –-dbpath d:mongodbdb 啟動伺服器:
當伺服器啟動以後,我們的檔案系統如下:
連線MongoDB伺服器
使用命令 mongo 連線伺服器:
此時連線的是我們本機的MongoDB,可以看到當前MongoDB的版本號,以及連線的資料庫名稱。
指定遠端伺服器:
mongo 192.168.1.200
指定遠端伺服器、埠號:
mongo 192.168.1.200:27017
指定遠端伺服器、埠號、資料庫:
mongo 192.168.1.200:27017/mydb
指定遠端伺服器、埠號、資料庫、使用者名稱、密碼(未測試):
mongo 192.168.1.200:27017/mydb –u user –p password
在連線伺服器之後,我們就可以進行CURD操作了。
資料庫資訊
使用命令db檢視當前使用的資料庫
使用use命令切換資料庫。MongoDB的資料庫在使用前不需要建立,直接use就可以了。資料表也是這樣。
基本概念
文件:文件是一組鍵值對,可以理解為資料行。例如:
{name:”Tom”, age:12}
集合:集合是一個文件的集合,可以理解為資料表。集合存在於資料庫中,且集合中的文件可以擁有不同的結構。
資料庫:資料庫是一個集合的物理容器,MongoDB的資料庫對應到自己設定的檔案系統上面。
插入操作(insert)
在插入資料的時候,我們首先要選擇要插入的集合。例如要將資料插入的user集合中,那麼我們可以使用如下命令:
db.user.insert({name:”Tom”, age:12})
執行效果如圖:
集合中的文件可以有用不同的結構,例如我們也可以把下面的文件插入到user集合中:
db.user.insert({name:”Jerry”, sex:0})
批量插入:
var list = [{name:”Jack”, age:13}, {name:”Lucy”, age:12}];
db.user.insert(list);
執行效果如圖:
查詢操作
使用find進行查詢:
db.user.find()
目前我們的集合中有四行資料,不帶引數的時候會返回所有文件:
我們會看到文件中有一個_id欄位,這是MongoDB自動生成的,用來標記文件唯一性的,我們也可以自己指定這個值。
引數查詢
轉自一線碼農:《8天學通MongoDB》系列
日常開發中,我們玩查詢,玩的最多的也就是二類:
①: >, >=, <, <=, !=, =。
②:And,OR,In,NotIn
這些操作在mongodb裡面都封裝好了,下面就一一介紹:
<1>”$gt”, “$gte”, “$lt”, “$lte”, “$ne”, “沒有特殊關鍵字”,這些跟上面是一一對應的,舉幾個例子。
<2> “無關鍵字“, “$or”, “$in”,”$nin” 同樣我也是舉幾個例子
<3> 在mongodb中還有一個特殊的匹配,那就是“正規表示式”,這玩意威力很強的。
<4> 有時查詢很複雜,很蛋疼,不過沒關係,mongodb給我們祭出了大招,它就是$where,為什麼這麼說,是因為$where中的value
就是我們非常熟悉,非常熱愛的js來助我們一馬平川。
更新操作
使用update進行更新,更新的引數有三個,第一個是更新條件,第二個是新的文件,第三個是更新的選項,可以忽略。
例如我們要更新Tom的年齡:
db.user.update({name:”Tom”}, {name:”Tom”, age:15})
執行結果如下:
注意,這種更新是完整的更新,如果不給出name的值,將會把name欄位刪除掉。下面的內容來自一線碼農:
<1> 整體更新
不知道大家可還記得,我在上一篇使用update的時候,其實那種update是屬於整體更新。
<2> 區域性更新
有時候我們僅僅需要更新一個欄位,而不是整體更新,那麼我們該如何做呢?easy的問題,mongodb中已經給我們提供了兩個
修改器: $inc 和 $set。
① $inc修改器
$inc也就是increase的縮寫,學過sql server 的同學應該很熟悉,比如我們做一個線上使用者狀態記錄,每次修改會在原有的基礎上
自增$inc指定的值,如果“文件”中沒有此key,則會建立key,下面的例子一看就懂。
② $set修改器
啥也不說了,直接上程式碼
<3> upsert操作
這個可是mongodb創造出來的“詞”,大家還記得update方法的第一次引數是“查詢條件”嗎?,那麼這個upsert操作就是說:如果我
沒有查到,我就在資料庫裡面新增一條,其實這樣也有好處,就是避免了我在資料庫裡面判斷是update還是add操作,使用起來很簡單
將update的第三個引數設為true即可。
<4> 批量更新
在mongodb中如果匹配多條,預設的情況下只更新第一條,那麼如果我們有需求必須批量更新,那麼在mongodb中實現也是很簡單
的,在update的第三個引數中,講multi設定為true:
db.user.update({},{$inc:{age:1}},{multi:true})
刪除操作
直接使用remove進行刪除,如果不帶引數,則會提示需要一個引數:
也就是說remove操作必須要帶一個引數,例如我們要刪除user中的所有資料,我們可以使用下面的命令:
db.user.remove({})
執行效果如圖:
本文參考並轉自一線碼農:《8天學通MongoDB》系列
如果認為此文對您有幫助,別忘了支援一下哦!
相關文章
- ElasticSearch CURD Sense 及常用操作Elasticsearch
- docker安裝mongoDB及使用DockerMongoDB
- 【mongodb】mongodb的安裝MongoDB
- windows下mongodb的安裝及啟動WindowsMongoDB
- ThinkPHP 的CURD 基本操作PHP
- MongoDB Windows環境安裝及配置MongoDBWindows
- Mongodb在Windows下安裝及配置MongoDBWindows
- MongoDB的安裝MongoDB
- MongoDB的常用Query操作及操作符MongoDB
- MongoDB 資料庫介紹及安裝MongoDB資料庫
- Mongodb的安裝(一)MongoDB
- mongodb 安裝MongoDB
- 安裝mongodbMongoDB
- MongoDB安裝MongoDB
- mongodb 安裝MongoDB
- 使用dbutils完成curd操作
- mongodb的安裝以及使用MongoDB
- mongodb的安裝配置,使用MongoDB
- Go 語言操作 MySQL 之 CURD 操作GoMySql
- Docker安裝mongodbDockerMongoDB
- 【mongodb安裝配置】MongoDB
- MAC 安裝 MongoDBMacMongoDB
- Mac安裝MongoDBMacMongoDB
- mongodb 3.2.0.4安裝MongoDB
- centos安裝mongodbCentOSMongoDB
- 【mongodb】安裝pymongoMongoDB
- MongoDB安裝指南MongoDB
- (翻譯) MongoDB(7) 安裝MongoDBMongoDB
- MongoDB系列一(索引及C#如何操作MongoDB)MongoDB索引C#
- Mongodb32位的安裝下載,及Mongodb32位的閃退問題MongoDB
- Ubuntu安裝和解除安裝mongodbUbuntuMongoDB
- go mysql 基礎操作 (CURD)GoMySql
- docker安裝elasticsearch及kibana部署、操作DockerElasticsearch
- Mongodb的下載與安裝MongoDB
- ubuntu透過安裝包安裝MongodbUbuntuMongoDB
- 【MongoDB】安裝與配置MongoDB
- MongoDB | Linux 安裝MongoDBLinux
- Windows下安裝MongoDBWindowsMongoDB