这是情况:
我有一个包含180万行文本的文件,需要将其注入到SQL表中。我已经有能够正常工作但速度比较慢(每天大约处理25万行)的代码。不幸的是,我还有4个同样大小的文本文件需要处理,所以我需要一种加速处理过程的方法。任何帮助都将不胜感激。如果某些代码看起来不对,那是因为我省略了一些隐私内容。我知道可以删除file.appendall,但我使用它来跟踪进度,并且我也使用star++,这样我就可以在第二天继续进行而不会停止备份。
DirectoryInfo dinfo = new DirectoryInfo(ocrdirectory);
FileInfo[] Files = dinfo.GetFiles("*.txt");
foreach (FileInfo filex in Files)
{
string[] primaryfix = File.ReadAllLines(dinfo + "\\" + filex);
string filename = filex.ToString();
string[] spltifilename = filename.Split('.');
foreach (string primary in primaryfix)
{
string sqltable = ("dbo.amu_Textloadingarea");
string sql = "update " + sqltable +
" set [Text] = [Text] + '" + primary +"|"+
"' where unique = '" + spltifilename[0] + "'";
File.AppendAllText(@"C:\convert\sqltest.txt", sql+"\n");
SqlConnection con = new SqlConnection("Data Source= Cote ;Initial Catalog= eCASE;Integrated Security= SSPI");
con.Open();
SqlCommand cmd = new SqlCommand(sql, con);
SqlDataReader reader = cmd.ExecuteReader();
con.Close();
Console.WriteLine(start);
start++;
}