读取一个txt档,然后将数据插入sql server,执行的时候报内存溢出,有时候提示连接已关闭
用的是批插的方式
sqlBC.WriteToServer(dt);
之前数据量不是太大,三四十万笔,速度还行,三四十秒
现在数据量变得很大,txt档 150M左右,数据近100W,
//事务处理插入数据库中
public void Exesql()
{
//调用方法TxtFileToStr()
string str = TxtFileToStr();
string[] sql = str.Split(','); //得到string 数组
int num = sql.Length - 1;
一次事务处理直接内存溢出,请问如何分批处理呢?求人指导,程式已经执行不成功了,现在都我手动在处理,头大了.
//读出文本的内容
private string TxtFileToStr()
{
string FilePath = System.Configuration.ConfigurationSettings.AppSettings["FilePath"];//得到文本路径
Console.WriteLine(FilePath);
FileInfo file = new FileInfo(FilePath);
FileStream fs = file.OpenRead();
StreamReader sr = new StreamReader(fs, System.Text.Encoding.GetEncoding("utf-8"));
sr.BaseStream.Seek(0, SeekOrigin.Begin);
string str = sr.ReadToEnd();
fs.Close();
sr.Close();
return str;
}