在SqlServer中有SqlBulkCopy进行大批量的数据插入,使用起来非常方便,速度也很快,那么在MySql中是否也有类似于SQLBulkCopy这样的方法来批量插入数据到数据库呢?像拼接Sql的,MySqlBulkLoader 的,还有MySqlCommand这样的方法除外,还有没有更好的方法呢??
MySql有个命令,可以从文件中批量快速插入数据,问主可搜索“MySQL load data”关键字查看详情
有什么好的方法在程序中,从DataTable大批量插入到数据库中呢?
@gyangjing: 别把数据读到datatable,想办法生成txt或csv文件,然后用mysql提供的命令直接导入即可。如果你没有办法越过datatable,可以尝试先把datatable里的数据写入文本文件,然后用mysql的导入命令试试速度怎么样。
@会长: 像生成CSV这样的文件,都试过了,过程是非常慢的,有没有像SQLServer那样有SqlBulkCopy这样的方法,快速插入的
@gyangjing: datatable里的数据是怎么来的,不可以直接生成csv文件吗,不要生成datatable
@gyangjing: 我刚才百度搜索到一个类似的:mysqlbulkcopy 。你试试效果怎么样
@会长: 就是在生成CSV的时候比较慢,数据源不一定是DataTable,也有可能是List集合,https://code.google.com/p/mysqlbulkcopy 这个网址打不开
@gyangjing: 那我暂时想不到别的办法了,一次插入多少条?
@会长: 我也是搜遍了很多方法,都没有一个好点的,一次可能插入几千条甚至上万条,几十个字段
@gyangjing: 杀入上万条用mysql的load命令很快的呀,关键是生成csv文件需要时间,上万条数据生成csv你测试了,得多久,感觉也用不了多久吧。
都没有一个最好的办法,哎,狠心结贴吧