c#对mysql的批量插入
来源:互联网 发布:mac表情 编辑:程序博客网 时间:2024/06/05 19:47
一、背景介绍
由于工作需要,实现了C#对mysql进行大批量记录进行插入,也包括单条插入。最先,在网上搜了很久,例子非常少。难道是mysql不够普及,还是mysql作为开源数据库不被大厂商采用,总之,搜来搜去就那几个例子;并且有的编译错误、有的语句不完整,没有一个可以拿来使用。后来,通过咨询同事、查阅资料、拼凑代码,最终执行成功。现在,把具体方法记录如下,以供后来者参考之。
二、控件安装说明
使用环境为VS2008。
mysql查询、建表工具为 navicat for mysql10.0.11。
安装MySQLDriverCS-n-EasyQueryTools-4.0.1-DotNet2.0.exe。
vs2008当中添加相应引用。
三、操作mysql数据库
mysql可以通过一条语句,执行批量操作。即把所要插入的所有记录都写入到一条语句当中,每个记录之间用逗号隔开,然后执行该语句即可。
程序文件添加引用 using MySQLDriverCS;
接下来,就可以来操作mysql数据库了,具体代码如下:
//该函数实现数据语句的执行操作
private void ExeMysql(string sql)
{
//连接参数
m_service = "127.0.0.1"; //服务器,本机
m_database = "test"; //数据库名称
m_user = "root"; //用户名,默认"root"
m_pws = ""; //密码,空值
//连接数据库
MySQLConnection mCon = new MySQLConnection(new MySQLConnectionString(m_service, m_dataBase, m_user, m_pws, 3306).AsString);
mCon.Open();
//执行sql语句
MySQLCommand mCmd = new MySQLCommand(sql, mCon);
mCmd.ExecuteNonQuery();
//关闭连接、释放资源
mCmd.Dispose();
mCon.Close();
mCon.Dispose();
}
//调用执行
private void button1_Click(object sender, EventArgs e){
//多条记录通过逗号分隔,最后一条后面不加。
string sql = insert into table (field1, field2, field3, fiedl3, fiedl4, field5) values (item1, item2, item3, item4, item5),
(item1, item2, item3, item4, item5),
......
(item1, item2, item3, item4, item5);
//一次插入记录的条数可自行控制,但是建议500条执行一次,否则,记录数过多,会影响效率
ExeMysql(sql);
}
附插入语句实际例子:
insert into T_CO_201506WattHourMeterInfo (F_MeasurementPoints,F_KeyName,F_Key,F_DataCollectionTime,F_DataInputTime) values ('1234','10119010',98.306,'2015-08-12 0:00:00','2015-08-12 0:00:00'),('1234','10119011',92.536,'2015-08-12 0:00:00','2015-08-12 0:00:00'),('1234','10119010',92.536,'2015-08-12 1:00:00','2015-08-12 1:00:00'),('1234','10119011',92.536,'2015-08-12 1:00:00','2015-08-12 1:00:00'),('1234','10119010',92.536,'2015-08-12 2:00:00','2015-08-12 2:00:00'),('1234','10119011',92.536,'2015-08-12 2:00:00','2015-08-12 2:00:00'),('1234','10119010',92.536,'2015-08-12 3:00:00','2015-08-12 3:00:00'),('1234','10119011',92.536,'2015-08-12 3:00:00','2015-08-12 3:00:00'),('2222','10119010',97.521,'2015-08-12 15:00:00','2015-08-12 15:00:00'),('2222','10119011',97.521,'2015-08-12 15:00:00','2015-08-12 15:00:00'),('2222','10119010',97.521,'2015-08-12 16:00:00','2015-08-12 16:00:00'),('2222','10119011',97.521,'2015-08-12 16:00:00','2015-08-12 16:00:00'),('2222','10119010',97.521,'2015-08-12 17:00:00','2015-08-12 17:00:00'),('2222','10119011',97.521,'2015-08-12 17:00:00','2015-08-12 17:00:00'),('2222','10119010',97.521,'2015-08-12 18:00:00','2015-08-12 18:00:00'),('2222','10119011',97.521,'2015-08-12 18:00:00','2015-08-12 18:00:00'),('2222','10119010',97.521,'2015-08-12 19:00:00','2015-08-12 19:00:00'),('2222','10119011',97.521,'2015-08-12 19:00:00','2015-08-12 19:00:00'),('2222','10119010',97.521,'2015-08-12 20:00:00','2015-08-12 20:00:00'),('2222','10119011',97.521,'2015-08-12 20:00:00','2015-08-12 20:00:00'),('2222','10119010',97.521,'2015-08-12 21:00:00','2015-08-12 21:00:00'),('2222','10119011',97.521,'2015-08-12 21:00:00','2015-08-12 21:00:00'),('2222','10119010',97.521,'2015-08-12 22:00:00','2015-08-12 22:00:00'),('2222','10119011',97.521,'2015-08-12 22:00:00','2015-08-12 22:00:00'),('2222','10119010',97.521,'2015-08-12 23:00:00','2015-08-12 23:00:00'),('2222','10119011',97.521,'2015-08-12 23:00:00','2015-08-12 23:00:00')
- c#对mysql的批量插入
- mysql的批量插入
- 对mysql数据库批量插入数据的速度测试
- 对mysql的批量插入数据语法小结一下。
- c# 批量 插入转换为mysql日期
- mysql 批量插入和批量更新的
- Mybatis3中对oracle的批量插入
- JDBC rewriteBatchedStatements对批量插入的影响
- Mybatis对Oracle批量插入的配置
- 【mysql】 mysql批量插入
- mybatis 对oracle和mysql 批量插入操作
- 如何提升MySQL批量插入的效率
- 如何提升MySQL批量插入的效率
- 如何提升MySQL批量插入的效率
- Mysql批量插入随机数的方法
- mysql批量插入,更新的sql语句
- 如何提升MySQL批量插入的效率
- Mysql批量插入的性能总结
- 山东通信管理局电话
- 线程安全
- 零基础学python-2.11 回到我们的游戏 加入条件判断
- iOS 隐藏NavigationBar的方法
- 64位win7 pl/sql developer连接linux oracle11g服务端
- c#对mysql的批量插入
- NZND壳-设计
- 黑马程序员-----Java基础-----继承
- 用CocoaPods做iOS程序的依赖管理
- 剑指Offer面试题51(Java版):数组中重复的数字
- Android Api Demos登顶之路(三十)Display Options
- 移动时代的前端加密
- cassandra nodejs driver maillist link
- Scala入门到精通——第二十四节 高级类型 (三)