首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

Excel导入SQLSERVER数据库,请教怎样杜绝导入表头那一行

2011-12-24 
Excel导入SQLSERVER数据库,请问怎样杜绝导入表头那一行大家好,现在想把Excel表中的数据导入SQLSERVER数据

Excel导入SQLSERVER数据库,请问怎样杜绝导入表头那一行
大家好,现在想把Excel表中的数据导入SQLSERVER数据库,一切正常,就是表头部分的中文说明(A部分和B部分)不想导入,请问在代码中应该如何处理.

Excel表:      
        (A)                                           关于*********的报表

        (B)                     序号           作者         图书名称             价格      
                                    1               SDFSD         SDFSDFS             55
                                    2               FSDFS           DFSDF                 66
                                    3               SDFSDF           SDFS               77

我的代码如下:
public   void   LoadData(string   FileSource,string   StyleSheet)
{
    string   strCon   = "Provider=Microsoft.Jet.OLEDB.4.0;Data   Source   = "   +       @FileSource   +   ";Extended   Properties=Excel   8.0 ";
    OleDbConnection   myConn   =   new   OleDbConnection(strCon);  
      myConn.Open();   //打开数据链接,得到一个数据集  
      DataSet   myDataSet   =   new   DataSet();   //得到自己的DataSet对象  
      string   StrSql= "select   *     from   [ "+StyleSheet+ "$] ";
  OleDbDataAdapter   myCommand   =   new   OleDbDataAdapter   (StrSql,myConn);                
      myCommand.Fill(myDataSet, "[ "+StyleSheet+ "$] ");  
      myCommand.Dispose();
      DataTable   DT=myDataSet.Tables[ "[ "+StyleSheet+ "$] "];
      myConn.Close();
      myCommand.Dispose();

      conn.Close();
      conn.Open();
      string   sql= "delete       from   TEST ";
      SqlCommand   comm=new   SqlCommand(sql,conn);
      comm.ExecuteNonQuery();
      comm.Dispose();

        for(int   j=0;j <DT.Rows.Count;j++)
              {
string   ID=DT.Rows[j][0].ToString();string   AUTHOR=DT.Rows[j][1].ToString();string   NAME=DT.Rows[j][2].ToString();
string   PRICE=DT.Rows[j][3].ToString();string   strSql= "insert   into   TEST(ID,AUTHOR,NAME,PRICE)   ";
strSql=strSql   +   "values                               ( ' "+ID+ " ', ' "+AUTHOR+ " ', ' "+NAME+ " ', ' "+PRICE+ " ') ";


comm=new   SqlCommand(strSql,conn);
comm.ExecuteNonQuery();
if   (j==DT.Rows.Count-1)
      {
          Label1.Visible=true;
        }
                  }
conn.Close();
    }
}


   


[解决办法]
DataGrid.ShowHeader = false
[解决办法]
加个条件判断string ID=DT.Rows[j][0].ToString();,如果是数字,则insert到数据库.否则,continue
[解决办法]
for(int j=2;j <DT.Rows.Count;j++)
{
string ID=DT.Rows[j][0].ToString(); string AUTHOR=DT.Rows[j][1].ToString(); string NAME=DT.Rows[j][2].ToString();
string PRICE=DT.Rows[j][3].ToString(); string strSql= "insert into TEST(ID,AUTHOR,NAME,PRICE) ";
strSql=strSql + "values ( ' "+ID+ " ', ' "+AUTHOR+ " ', ' "+NAME+ " ', ' "+PRICE+ " ') ";
comm=new SqlCommand(strSql,conn);
comm.ExecuteNonQuery();
if (j==DT.Rows.Count-1)
{
Label1.Visible=true;
}
}
conn.Close();
}
}

热点排行