C#把mongodb导入sqlsever
来源:互联网 发布:js利用gettime() 月 编辑:程序博客网 时间:2024/05/20 04:13
原理很简单 就是把mongodb中的数据提出来 插入sqlsever中
首先要在mongodb中添加mongodb字段和sqlsever字段对应的集合field。
格式:
{
"sqlsever字段" : "name",
"mongodb字段" : "name"
}
MongoClient client; MongoServer server; MongoDatabase database; client = new MongoClient(conStr); server = client.GetServer(); database = server.GetDatabase(DataConf.DataBaseName); var data_biaoti = database.GetCollection("field"); var data_biaotiall = data_biaoti.FindAll(); List<string> biaoti = new List<string>(); List<string> nature = new List<string>(); //把字段放入数组中 foreach (var mongodb in data_biaotiall) { biaoti.Add(mongodb.AsBsonDocument["mongodb字段"].ToString()); nature.Add(mongodb.AsBsonDocument["sqlsever字段"].ToString()); } var fill_data = database.GetCollection("mongodb集合"); var fill_dataall = fill_data.FindAll(); SqlConnection conn = new SqlConnection("Data Source=计算机名;Initial Catalog=数据库名;User ID=帐号;Password=密码;"); conn.Open(); //提取mongodb数据 foreach (var fill_ttdoc in fill_dataall) { DateTime dt; List<string> fills_data = new List<string>(); List<string> fills_name = new List<string>(); //把值装入stringlist中 for (int n = 0; n < biaoti.Count(); n++) { if (fill_ttdoc.Contains(biaoti[n])) { if(biaoti[n]=="时间") { dt = ConvertTime(fill_ttdoc.AsBsonDocument[biaoti[n]].ToString()); fills_data.Add(dt.ToString()); } else { fills_data.Add(fill_ttdoc.AsBsonDocument[biaoti[n]].ToString()); } fills_name.Add(nature[n]); } } string sqlStr = "insert into 表名 ("; //拼接sql---name for (int n = 0; n < fills_name.Count(); n++) { if (n == (fills_name.Count() - 1)) { sqlStr += fills_name[n].ToString(); } else { sqlStr += fills_name[n].ToString() + ","; } } sqlStr +=") values ("; //拼接sql---data for (int n = 0; n < fills_data.Count(); n++) { if (n == (fills_data.Count() - 1)) { sqlStr +="'"+fills_data[n].ToString()+"'"; } else { sqlStr += "'"+fills_data[n].ToString() + "',"; } } sqlStr += ")"; MessageBox.Show(sqlStr); SqlCommand cmd = new SqlCommand(sqlStr, conn); //MessageBox.Show(sqlStr); cmd.ExecuteScalar(); } conn.Close(); MessageBox.Show("导入数据结束");
ConverTime函数是把类型转换成日期类型:例如把2013年5月8日 转化成2013-5-8
关于一些对一些数据处理时的特殊转化 参考 :
对字符串保留数字小数点,有中文的日期转化等特殊数据处理
如果不是插入数据 只是对sqlsever的表进行更新时 只需要 改一下拼接的 sql语句就行了
string sqlStr = "update t_p_baseinfo_e set "; //拼接sql for (int n = 0; n < fills_name.Count(); n++) { if (n == (fills_name.Count() - 1)) { sqlStr += fills_name[n] + "='" + fills_data[n] + "'"; } else { sqlStr +=fills_name[n] + "='" + fills_data[n] + "',"; } sqlStr += " where sqlsever_id='" + sqlseverid+"'";
- C#把mongodb导入sqlsever
- excel导入sqlsever
- csv导入sqlsever脚本
- C# 连接数据库 SQLSever
- python 把json数据导入mongodb数据库
- sqlsever
- SQLSever
- C# 从MongoDB导入数据到mysql
- 把 SQL Server 导入 MongoDB 的 Ruby 脚本
- [bigdata-032] 把json文件导入到mongodb
- 使用navicate将sqlsever数据库导入到mysql数据库中
- MongoDB:MongoDB导入导出
- 怎么把.cs文件导入VS c#项目中
- C#把DataTable里的数据批量导入SQLite
- C#把txt的数据导入excel,用逗号分隔
- C# 如何把DataGridView导入到PDF表格
- C# MongoDB
- mongodb导入csv文件
- 分享10个Web设计者喜欢的超棒背景和纹理资源
- 按回车Enter键后自动隐藏软键盘、进页面自动弹出软键盘
- ExtJs只选择年月
- 推荐一个好用的CAD绘图工具-VectorDraw
- Struts Menu 祥解
- C#把mongodb导入sqlsever
- shell中的括号(小括号,大括号,中括号)
- ZOJ 3179 Calculate With Abacus(字符处理)
- listView 取消点击背景
- XML处理数据
- Mac OS下安装配置Git-TF连接TFS2012教程
- HashMap 和Hashtable 的区别
- ZOJ 1654 Place the Robots(二分图最大匹配)
- video4linux(v4l)使用摄像头的实例基础教程与体会