c# 怎么将数据批量插入mysql数据库?单条插入会出错

c# 如何将数据批量插入mysql数据库?单条插入会出错。
这里有N个文本文件,每一个文本文件中有几万条数据。

之前的做法是这样的:
打开文本后,逐条读取数据(每行里的字段以','分割)然后分割,按照字段赋值后形成一条sql 的value
                while (!sr.EndOfStream)
                {
                    string aline= sr.ReadLine().Trim();//一行一行读取
                    string[] list = aline.Split(',');
                    string insertlist = "'" + a[1] + "','" + a[2]+"','";
                    for (int i = 0; i < list.Length; i++)
                    {
                        insertlist += list[i] + "','";
                    }
                    insertlist += list[0]+a[1]+"'";
                    richTextBox1.Text = insertlist;
                    string strsql = "INSERT INTO `allwin`.`index_base` (`Symbolname`, `Symboltype`,`date`, `oprice`, `hprice`, `lpirce`, `cpirce`, `vol`, `openint`, `opricevariation`, `hpricevariation`, `lpircevariation`, `cpircevariation`, `symindex`) VALUES (" + insertlist + ")";
                    MySqlCommand cmd = new MySqlCommand(strsql,conn);
                    label2.Text = strsql;
                    try
                    {
                        cmd.ExecuteNonQuery();
                    }
                    catch
                    { 
                    
                    }
                }
                sr.Close();


但是发现逐条录入时,数据少没有问题,数据多了,处理几个文件后就崩溃了。

请问如何批量入库很多数据呢?


PS:我是C#新手,刚粗浅学习了c#,如果因为我的问题过于浅显或是小白,请见谅。对您来讲可能都不算事儿的事儿对我来说却难如登天。   感谢帮助。

------解决方案--------------------
c# 怎么将数据批量插入mysql数据库?单条插入会出错
不知道具体什么逻辑 
1.如果数据库可以完成的话 就写成sql语句交给数据库跑
2.1不行的话 把数据读取到datatable中 这样就不用没吃查数据库了 循环datatale
3.用2的时候你查下 看看那个数据操作性能更好 datatable 泛型 等等 貌似还与.netfromwork有关系 ,不同的版本的fromwork 组件的性能也不同 
------解决方案--------------------
c# 怎么将数据批量插入mysql数据库?单条插入会出错
datatable 也可以对数据进行各种操作 如where sum 等

http://msdn.microsoft.com/zh-cn/library/system.data.datatable.compute(v=vs.110).aspx