日期:2014-05-17  浏览次数:20511 次

求教,.DBF文件导入到SqlServer2005的问题
新人,由于学校给的学生数据格式是.DBF格式的,现在新开发了一套系统,数据库用的是Sqlserver2005,但是对于学生数据的维护还是.DBF格式的,现在遇到的就是.DBF格式的文件怎么插入到Sqlserver2005数据库里,表的格式如下:
Xh  nvachar(50) 备注:学号
Xm  nvachar(50) 备注:姓名
Bh  nvachar(50) 备注:院系
新建的表和给的数据格式完全一致,本人参考了网上的一个例子,但是有些东西看不太懂,源代码如下:

   protected void Button1_Click(object sender, EventArgs e)
    {
  SXHD_DAL.DatabaseOper Dc = new DatabaseOper();
    System.Data.Odbc.OdbcConnection conn_dbf = new System.Data.Odbc.OdbcConnection();

        if (FileUpload1.PostedFile.ContentLength == 0)
        {
            Response.Write("<mce:script language=javascript><!--
alert('请选择需要导入的数据源!')
// --></mce:script>");
        }
        else
        {
            string fileName = FileUpload1.PostedFile.FileName.ToString();//获取dbf文件(包含路径)  
            //链接dbf数据库字符串
            string connStr = "Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB=" + fileName + ";Exclusive=No;NULL=NO;Collate=Machine;BACKGROUNDFETCH=NO;DELETED=NO";
            conn_dbf.ConnectionString = connStr;
            conn_dbf.Open();   //打开链接

            string sql = "select * from " + fileName;
            OdbcDataAdapter da = new OdbcDataAdapter(sql, conn_dbf);
            DataTable dt = new DataTable();
            da.Fill(dt);
            DataSet ds = new DataSet();
            ds.Tables.Add(dt);       
          
            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)