一:安裝
1.首先到官網(http://www.mongodb.org/downloads )下載合適的安裝包
2.安裝mongodb
3. cmd 命令切換到安裝目錄bin 下面
mongod --dbpath D:\MongoDB\data
這是命令行窗口會打印一些啓動信息,最後一行顯示爲以下信息時表示啓動成功了
這是在瀏覽器輸入http://localhost:27017/能夠看到顯示信息爲
It looks like you are trying to access MongoDB over HTTP on the native driver port.
4.建立文件 mongod.cfg ,內容以下:
systemLog:
destination: file
path: c:\data\log\mongod.log
storage:
dbPath: c:\data\db
5. mongod --config "C:\mongodb\mongod.cfg" --install
6.開啓,關閉,移除服務
net start MongoDB
net stop MongoDB
"D:\MongoDB\data" --remove
二:基本操做
再開一個cmd,輸入mongo命令打開shell,其實這個shell就是mongodb的客戶端,
同時也是一個js的編譯器,默認鏈接的是「test」數據庫。mongodb
<1>insert 增:
> db.person.insert({"name":"ken","age":"23"})
WriteResult({ "nInserted" : 1 })
> db.person.insert({"name":"jack","age":"20"})
WriteResult({ "nInserted" : 1 })shell
<2>find 查:
2.1等於條件
> db.person.find({"name":"ken"})
{ "_id" : ObjectId("571ed103643f3e87212a7c20"), "name" : "ken", "age" : "23" }
> db.person.find()
{ "_id" : ObjectId("571ed103643f3e87212a7c20"), "name" : "ken", "age" : "23" }
{ "_id" : ObjectId("571ed118643f3e87212a7c21"), "name" : "jack", "age" : "30" }
① 「_id": 這個字段是數據庫默認給咱們加的GUID,目的就是保證數據的惟一性。
2.2 IN
> db.kehu.find({shop_name:{$in: ['總部','主站']}})
{ "_id" : ObjectId("571ee1c1e77ed0fd0ee9eb35"), "shop_name" : "總部", "code" : "000" }
{ "_id" : ObjectId("571ee1c2e77ed0fd0ee9eb36"), "shop_name" : "主站", "code" : "OS001" }
2.3 字段值大於 ($gt) 或 字段小於 ($lt)
> db.kehu.find({ $and: [ {code:{ $gt: '180' }}, {code:{ $lt: '200' }}] })
{ "_id" : ObjectId("571ee1c4e77ed0fd0ee9ecde"), "shop_name" : "時尚旗艦店", "code" : "181" }
{ "_id" : ObjectId("571ee1c4e77ed0fd0ee9ece2"), "shop_name" : "Pattys way", "code" : "182" }
{ "_id" : ObjectId("571ee1c4e77ed0fd0ee9ece3"), "shop_name" : "ROSA", "code" : "183" }
2.4 兩個字段匹配
> db.kehu.find({code:'181', $and: [ {code:{ $gt: '180' }}, {code:{ $lt: '200' }}] })
{ "_id" : ObjectId("571ee1c4e77ed0fd0ee9ecde"), "shop_name" : "時尚旗艦店", "code" : "181" }
查詢表中全部數據:db.表名.find();
按條件查詢(支持多條件):db.表名.find(條件);
查詢第一條(支持條件):db.表名.findOne(條件);
限制數量:db.表名.find().limit(數量);
跳過指定數量:db.表名.find().skip(數量);
比較查詢
大於:$gt
小於:$lt
大於等於:$gte
小於等於:$lte
非等於:$ne
或者:$or
in和not in查詢(包含、不包含)
$in
$nin數據庫
查詢數量:db.表名.find().count();
排序:db.表名.find().sort({"字段名":1});
1:表示升序 -1:表示降序
指定字段返回: db.表名.find({},{"字段名":0});
1:返回 0:不返回瀏覽器
存儲過程
建立存儲過程:
db.system.js.save({_id:"存儲過程ID",
value:function(參數){
-- 邏輯主體;
return 返回;
}});
調用存儲過程
db.eval("存儲過程ID()");
全部存儲過程都存放在db.system.js中命令行
<3>update 改:
update方法的第一個參數爲「查找的條件」,第二個參數爲「更新的值」
> db.person.update({"name":"ken"},{"name":"ken","age":"28"})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.person.find({"name":"ken"})
{ "_id" : ObjectId("571ed103643f3e87212a7c20"), "name" : "ken", "age" : "28" }code
<4>remove 刪:
刪除其中1條
> db.person.remove({"name":"ken"})
WriteResult({ "nRemoved" : 1 })
> db.person.find()
{ "_id" : ObjectId("571ed118643f3e87212a7c21"), "name" : "jack", "age" : "30" }
刪除所有
> db.person.remove({})
WriteResult({ "nRemoved" : 1 })
> db.person.find()
>
drop對象
> db.person.drop()
true
> db.person.find()
>對象