sqlserver 读取 dbf文件
比如说深圳交易所行情数据 sjshq.dbf 怎样弄到sqlserver中最方便?
我现在有很多dbf数据要弄到数据库里
我现在是sqlserver建立了对应的表 然后将dbf读取到了OleDbDataAdapter 然后我该怎么写到sqlserver对应的表里呢
谁有什么好方法?
我现在读取时这么写的:
string str_conn = @"Provider=vfpoledb;Data Source=" + str_path + ";Collating Sequence=machine;";
SqlConnection Connection = new SqlConnection();
SqlDataAdapter sqldataadp = new SqlDataAdapter();
Connection.ConnectionString = FileRead.str_local;
try
{
OleDbConnection myConnection = new OleDbConnection(str_conn);
OleDbDataAdapter adpt = new OleDbDataAdapter("select * from sjshq.dbf", myConnection);
DataTable myTab = new DataTable();
adpt.Fill(myTab);
myConnection.Close();
}
catch (Exception message)
{
CalculateLog.WriteLog("error", "读取DBF文件出错!message=" + message.Data.ToString());
MessageBoxEx.Show("程序异常,请与管理员联系!错误信息:" + message.Data.ToString(), "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
------解决方案--------------------
太大太复杂的数据,最好不要用程序去处理,如果出错,都不知道怎么错的.
最简单的办法:
先将 DBF 文件导入到 ACCESS 或 SQL SERVER 2000, 再导到你用的 2005 或 2008 里.
注:2000 的DTS 中有 VFP 驱动,2005及以上去除了.
其实,导入都是由向导做的,你只要监测住相关的信息就行了,必要的时候,设置列映射.