有两个问题:
1.excel导入时报错
代码如下:        public void RunDelOrInsSQL(String strSQL)
        {
                this.open();
                SqlCommand SqlComm = new SqlCommand(strSQL, this.cnn);
                SqlComm.ExecuteNonQuery();
              }    
  
  private void button1_Click(object sender, EventArgs e)
        {
            openFileDialog1.ShowDialog();
            string strpath = openFileDialog1.InitialDirectory + openFileDialog1.FileName;
            System.Data.OleDb.OleDbConnection cn;
            String strsql1= "";
            strsql1="select * into smart from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;DATABASE="+strpath+"',Sheet1$)";
                cn = new System.Data.OleDb.OleDbConnection("Provider=MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;DATABASE="+strpath +"',Sheet1$");
                //从smart数据表中的sheet1工作簿导入数据 
                this.RunDelOrInsSQL(strsql1);
                cn.Open();
                MessageBox.Show("数据导入成功!", "恭喜", MessageBoxButtons.OK, MessageBoxIcon.Information);
                cn.Close();
       }
有时运行到SqlComm.ExecuteNonQuery()时提示:“MICROSOFT.JET.OLEDB.4.0报错,未返回任何错误信息"。 若运行到SqlComm.ExecuteNonQuery()时未提示错误则运行到cn.Open()时会提示:未在本地计算机上注册“MICROSOFT.JET.OLEDB.4.0','Excel 8.0”提供程序。
这是怎么回事啊????请高人解答!!!!
2.若excel表能正确导入,但在导入后字段顺序与原excel表中不同,例如:原excel表中顺序为id  name address导入后顺序为address id name。这又是怎么回事???
在线急等高手解答!!!!