当前位置:编程学习 > C#/ASP.NET >>

OleDbDataAdapter批量更新数据(真是太新手了,刚刚居然发到asp.net版上了,……)

问题是数据库中原有一个表,现在计算得到新的数据,想通过OleDbDataAdapter批量更新数据,要求函数形式为public bool SaveData(DataTable DT, string DataSoure, string TableName) 
其中DT是新计算得到的数据,共三列,第一列是主键,DataSoure表示数据库路径,和TableName一起用于建立数据库连接,如果更新数据库成功,返回True。 
我想的代码如下: 
        public bool SaveData(DataTable DT, string DataSoure, string TableName) 
        { 
            try 
            { 
                string strCon = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = " + DataSoure; 
                OleDbConnection conn = new OleDbConnection(strCon); 
                conn.Open(); 
                string strCom = "Select * from " + TableName; 
                DataTable newDT = new DataTable(); //建立新的数据表 

                  OleDbDataAdapter myAdaper = new OleDbDataAdapter(strCom, conn); 
                  OleDbCommandBuilder builder = new OleDbCommandBuilder(myAdaper); 
                
                myAdaper.Fill(newDT);    //将数据库原有信息存入newDT 


                for (int i = 1; i < DT.Rows.Count; i++) 
                    strCom = "Update newDT set " + newDT.Columns[1].ToString() + " = " + DT.Rows[i][1] + " , " + newDT.Columns[2].ToString() + " = " + DT.Rows[i][2] + " where " + newDT.Columns[0] + " = " + DT.Rows[i][0];  //到此newDT被成功更新 
                                  
                myAdaper.Update(newDT);      //执行成功,没有捕获错误,但数据库值没有被更新!  
                conn.Close(); 


        

            } 
            catch 
            { 
              return false; 
            } 
            
            return true; 
        } 

求各位大侠帮忙……在线等。或者发到我邮箱zhuyc05@mails.tsinghua.edu.cn,或者加我QQ  369436295  
可惜我是新手,刚刚注册的,也不知道怎么给大家加分,好像我自己没分不能给大侠啊,求求行行好啊……    
谢谢了!很急啊…… --------------------编程问答-------------------- 没人顶吗?请教啊……
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,