paradsie1018 2013年12月31日
读取一个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;
}
...全文
111 点赞 收藏 8
写回复
8 条回复

还没有回复,快来抢沙发~

发动态
发帖子
C#
创建于2007-09-28

8.4w+

社区成员

64.0w+

社区内容

.NET技术 C#
社区公告
暂无公告