使用C#将数据从DBF传输到SQL Server

时间:2016-08-26 16:46:32

标签: c# sql-server foxpro dbf

我需要一个函数将数据从.DBF文件传输到SQL Server。

以下是我的工作:

  • 第一步:我使用OleDBDataAdapter.Fill.DBF文件
  • 中读取
  • 第二步:将此表插入SQL Server。

对于90列X 80000行,第一步需要74秒。

有没有办法加快这个过程?

此外,如果有任何方法可以直接从.DBF传递到SQL Server,请指导我。顺便说一句,我正在使用C#和SQL Server 2008.

我的错,伙计们。我很少在这里发帖。 这是我的代码(将DBF转移到datatable需要1分钟):

            OleDbCommand oledbcommand = new OleDbCommand();
            OleDbDataAdapter adp = new OleDbDataAdapter();
            oledbcommand.Connection = oledbConnectOpen();
            oledbcommand.CommandText = @"SELECT * FROM " + filename;
            adp.SelectCommand = oledbcommand;

            adp.Fill(dt); //this is the step that consume time
            dt.TableName = filename;
            return dt;

1 个答案:

答案 0 :(得分:0)

在这种情况下,您最好使用OleDbDataReader而不是OleDBDataAdapter,因为阅读器已针对只进,只读访问进行了优化。见this article.