代码如下:
        protected void Button1_Click(object sender, EventArgs e)
        {
            DataSet myds = new DataSet();
            string sel_com = " select recv_treasury_code,No,budget_level_code,subject_code,amount,state,work_date from tax_return where work_date>'20120601' and state=9 ";
            string constrint_o = System.Configuration.ConfigurationManager.AppSettings["hncsk_oracle"];
            OracleConnection conn_o = new OracleConnection(constrint_o);            string constring_sql = System.Configuration.ConfigurationManager.AppSettings["hncsk_sql"];
            SqlConnection conn_s = new SqlConnection(constring_sql);
            try
            {
                conn_o.Open();
                OracleDataAdapter myda_o = new OracleDataAdapter();
                myda_o.SelectCommand = new OracleCommand(sel_com, conn_o);
                myda_o.Fill(myds);
                GridView1.DataSource = myds.Tables[0].DefaultView;
                GridView1.DataBind();                try {
                    conn_s.Open();
                    SqlDataAdapter sqlDa = new SqlDataAdapter();
                    
                    int rowAff = sqlDa.Update(myds, "tax_return_his");
                    Literal1.Text = "<script>alert('" + rowAff + "行受影响 !')</script>";
                }                catch
                {
                    Literal1.Text = "<script>alert('写入数据库时出错 !')</script>";
                }
            }
            catch
            {
                Literal1.Text = "<script>alert('打开数据库时出错 !')</script>";
            }
            finally
            {
                conn_o.Close();
            }
        }
int rowAff = sqlDa.Update(myds, "tax_return_his");出错!
从oracle读取数据到DataSet已成功,插入时报错,提示找不到tax_return_his表!

解决方案 »

  1.   

    还有个问题:
    GridView1.DataSource = myds.Tables[0].DefaultView;这样写没问题,为什么写成GridView1.DataSource = myds.Tables["表名"].DefaultView;就不行呢?
      

  2.   

    是往sql2000里插入表结构和select查询结果一样!
    由recv_treasury_code,No,budget_level_code,subject_code,amount,state,work_date 字段组成的tax_return_his表!
      

  3.   

    Oracle数据库表名为tax_return,在远程
    sql2000表名为tax_return_his,在本地
      

  4.   

    和myda_o.Fill(myds);
    不是一样?