2012-10-05

[C#][NoSQL] 第一次 使用 C# 操控 MongoDB 就上手 (修改資料)

 

上一篇談到刪除資料,這一篇來說一下關於如何修改資料..

其實概念很簡單,在一般對於SQL 概念就是 UPDATE SET欄位 WHERE ID=KEY

之類的…

 

但是其實在MongoDB概念中,就是三個動作..

取出來=>改一改=>放回去

我們這次範例為 將那筆資料根據id 取出來後修改 Age 還有 Name 之後放回去

sshot-166_2

C# Code :

//MongoDB 的 Conection URL 
var connectionString = "mongodb://user2:[email protected]:35747/sampledb2?safe=true";
 
//建立連線
var server = MongoServer.Create(connectionString);
 
//取得指定Database
var db = server.GetDatabase("sampledb2");
 
//指定操作Collection 為 Users 
MongoCollection<User> coll = db.GetCollection<User>("Users");
 
//將Id 為 501224ab15d1b21f3ce4ffea 取出來
var query = Query.EQ("_id", new BsonObjectId("501224ab15d1b21f3ce4ffea"));
 
var user = coll.FindOne(query);
 
 
user.Name = "當麻許修改後資料";
user.Age = 99999;
 
//存回去
var res = coll.Save(user);
 
 
//印出來看改變幾筆
Response.Write(res.DocumentsAffected);

結果: 1


因為不管你有沒有改過,你取出來存回去,一定都會算是影響的數字..


我們回去MongoLab Control Panel 看一下:


sshot-167_2


果然同 id資料被改變了…


很簡單的概念…