.NET 数据同步批量操作,高效率方式

来源:互联网 发布:2017诺贝尔奖预测知乎 编辑:程序博客网 时间:2024/04/30 07:07

       使用前数据库表必须有主键,并是自动增长的,红色代码为关键代码

  #region 保存数据到数据库                using (SqlConnection con = new SqlConnection(sqlHelper.ConnectionString))                {                    SqlDataAdapter da = new SqlDataAdapter("select * from  users ", con);                    SqlCommandBuilder cb = new SqlCommandBuilder(da);                    // ------SqlCommandBuilder 对象来自动生成用于单表更新的 Transact-SQL 语句                    DataTable dtDb = new DataTable();                    da.Fill(dtDb);                    foreach (DataRow se in dtTxt.Rows)                    {                        string id = se["OPRID"].ToString();                        DataRow[] drs = dtDb.Select("SM_UserID='" + id + "'");                        if (drs != null && drs.Length > 0)                        {                            foreach (DataColumn c in dtTxt.Columns)                            {                                if (dicDbColu.Values.Contains(c.ColumnName))                                    drs[0][dicDbColu[c.ColumnName]] = se[c.ColumnName];                            }                        }                        else                        {                            DataRow dataRow = dtDb.NewRow();                            foreach (DataColumn c in dtTxt.Columns)                            {                                    dataRow[dicDbColu[c.ColumnName]] = se[c.ColumnName];                            }                            dtDb.Rows.Add(dataRow);                            //insert                        }                    }                    //更新用户表信息,txt不存在记录IsEnable修改为0                    foreach (DataRow se in dtDb.Rows)                    {                        string id = se["SM_UserID"].ToString();                        DataRow[] drs = dtTxt.Select("OPRID='" + id + "'");                        if (drs != null && drs.Length > 0)                        {                            se["IsEnable"] = 1;                        }                        else                        {                            se["IsEnable"] = 0;                        }                    }                    result= da.Update(dtDb);                }
                #endregion





0 0
原创粉丝点击