2012-09-06 102 views
0

我需要将Excel文件中的数据导入到SQL Server数据库中。该数据文件包含我需要导入的大约120,000条记录(行)。 excel文件中的每行数据由大约183个格式化的数据列组成,数据将分散到SQL端的大约13个不同的表中。将所有这些记录导入到SQL中最好的方式(最简单但性能最好)是什么,以确保每行都得到正确处理。如何将Excel文档数据逐页导入到SQL表中

另一种方法是有一个选项,将数据加载到数据库中的临时数据表中,然后运行脚本将所有数据列从临时表移动到各种其他表中。

回答

2

我用这种方式来从CSV文件获取数据: - >

 int f = 0; 
var reader = new StreamReader(File.OpenRead(@ExcelFilePath)); 
       Buisness_logic bl = new Buisness_logic(); 

       while (!reader.EndOfStream) 
       { 
         if (f == 0) 
        { 
         var line = reader.ReadLine(); 
         f++; 
        } 
        else 
        { 
         var line = reader.ReadLine(); 
         string[] s = line.Split(','); 
         count = s.Length; 
         if (s.Length == 3) 
         { 
          var values = line.Split(','); 
          string query = "Insert into Events_party values('" + identity + "','" + values[0] + "','" + values[1] + "','" + values[2] + "','" + time + "','" + dt + "')"; 
          bl.ExecuteQuery(query); 
          count = 101; 
         } 
         else 
         { 
          MessageBox.Show("Imported File was not in defined format !! ", ".File Format Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); 
          textBox1.BackColor = Color.Pink; 
          break; 
          count = 100; 
         } 
        } 
       } 
+0

进口几乎120000行时效率如何呢? – Kobojunkie

相关问题