C# MongoDB简单增删改查使用
2015-07-21 12:09 老厨子 阅读(538) 评论(0) 编辑 收藏 举报关系型数据库:做任何的增删改查都要开启隐式实务来维持数据的完整性,占用磁盘空间比较大;
上面所说的隐式实务是数据库本身开启的,是不能由开发者去操作的;说到隐式实务,就会有人问道显示实务,显示实务是由开发者在代码中控制开启的事务,必须要有commit或者rollback;比如ADO中的SqlConnection con=new SqlConnection();var tran=con.BeginTrancation();tran.Commit();tran.Rollback()对象开启事务;这些语句就是显示实务语句。所以一条SQL语句在工作的时候需要开启隐式实务;那么在使用关系型数据库的时候会影响他的查询速度。
NoSql(Not Only SQL):非关系型数据库,现在比较流行使用的非关系型数据库Redis(键值对存储数据库)、MongoDB(文档型数据库)。
下面来说MongoDB的那些事吧。。。。。。
MongoDB 连接字符串格式:IP地址+端口号(默认27017,28017);例如:Server=127.0.0.1:27017
一、增加一条数据
// 首先创建一个连接 using (Mongo server = new Mongo(connString)) { //打开连接 server.Connect(); // 切换到指定的数据库 var db = server.GetDatabase(dbName); //获取Info的集合 var list = db.GetCollection<Info>(); //新增一条数据 Info model = new Info() { ID = 2, Name = "海山来客" }; list.Insert(model); }
二、删除数据
using (Mongo server = new Mongo(connString)) { server.Connect(); var db = server.GetDatabase(dbName); var coll = db.GetCollection<Info>(); coll .Remove(c => c.ID == 1); }
三、修改数据
using (Mongo server = new Mongo(connString)) { server.Connect(); var db = server.GetDatabase(dbName); var collection = db.GetCollection<Info>(); //var model=collection.Find<Info(c=>c.ID==1).Documents.First(); //model.Name = "海山来客"; Info model = new Info() { ID=2, Name="海山来客" }; collection.Update<Info>(model, c => c.ID == model.ID); }
四、查询数据
using (Mongo server = new Mongo(connString)) { //打开连接 server.Connect(); // 切换到指定的数据库 var db = server.GetDatabase(dbName); //获取Info的集合 var list = db.GetCollection<Info>(); var whereList = list.Find(c => c.ID == 2); var grouinfo = whereList.Documents。tolist(); }
收集到的一些比较基础的案例:
文档地址:http://blog.csdn.net/dannywj1371/article/details/7440916
http://www.360doc.com/content/14/0505/11/16021371_374739036.shtml