MongoDB學習筆記(二) 通過samus驅動實現基本資料操作

來源:互聯網
上載者:User

上一期筆者為我們做了MongoDB的介紹並且介紹了MongoDB的安裝方法,這一期我們將繼續跟隨筆者學習通過samus驅動實現基本資料操作。

傳統的關聯式資料庫一般由資料庫(database)、表(table)、記錄(record)三個層次概念組成,MongoDB是由 (database)、集合(collection)、文檔對象(document)三個層次組成。MongoDB對於關係型資料庫裡的表,但是集合中沒 有列、行和關係概念,這體現了模式自由的特點。


一、關於MongoDB的驅動

MongoDB支援多種語言的驅動,在此我們只介紹C#的驅動。僅C#驅動都有很多種,每種驅動的形式大致相同,但是細節各有千秋,因此代碼不能通 用。比較常用的是官方驅動和samus驅動。samus驅動除了支援一般形式的操作之外,還支援linq方式操縱資料。各人比較喜歡這種方式。

官方驅動:https://github.com/mongodb/mongo-csharp-driver/downloads

samus驅動:https://github.com/samus/mongodb-csharp

本篇將從samus驅動入手講解資料庫訪問,國際慣例,存取“Hello World!”。


二、通過samus驅動實現HelloWorld存取

在進行下述操作之前,請先確定MongoDB服務已經開啟,不知道怎麼開啟服務,請看上篇。下載驅動,建立控制台項目,並添加對MongoDB.dll的引用,如果你下載的是驅動源碼,編譯一遍引用產生的DLL即可。

基本代碼如下:

 
  1. //連結字串    
  2. string connectionString = "mongodb://localhost";    
  3. //資料庫名    
  4. string databaseName = "myDatabase";  
  5. //集合名    
  6. string collectionName = "myCollection";    
  7. //定義Mongo服務    
  8. Mongo mongo = new Mongo(connectionString);    
  9. //擷取databaseName對應的資料庫,不存在則自動建立    
  10. MongoDatabase mongoDatabase = mongo.GetDatabase(databaseName) as MongoDatabase;    
  11. //擷取collectionName對應的集合,不存在則自動建立    
  12. MongoCollection<Document> mongoCollection = mongoDatabase.GetCollection<Document>(collectionName) as MongoCollection<Document>;    
  13. //連結資料庫    
  14. mongo.Connect();    
  15. try   
  16. {    
  17.      //定義一個文檔對象,存入兩個索引值對    
  18.      Document doc = new Document();    
  19.      doc["ID"] = 1;    
  20.      doc["Msg"] = "Hello World!";    
  21.      //將這個文檔對象插入集合    
  22.      mongoCollection.Insert(doc);    
  23.      //在集合中尋找索引值對為ID=1的文檔對象    
  24.      Document docFind = mongoCollection.FindOne(new Document { { "ID", 1 } });    
  25.      //輸出尋找到的文檔對象中鍵“Msg”對應的值,並輸出    
  26.      Console.WriteLine(Convert.ToString(docFind["Msg"]));    
  27. }    
  28. finally   
  29. {    
  30.      //關閉連結    
  31.      mongo.Disconnect();    
  32. }  

運行程式,成功列印helloword。同時,我們開啟資料檔案夾,發現多了兩個檔案“myDatabase.ns”和“myDatabase.0”。


三、小結

代碼下載:http://files.cnblogs.com/lipan/MongoDB_001.rar

本篇簡潔的講解了基本存取操作,下篇將結合MVC架構通過MongoDB實現model層單個集合的基本增刪查改操作

原文出處:http://www.cnblogs.com/lipan/archive/2011/03/08/1977691.html

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.