C# DataTable 更新多行

标签 c# datatable dataset

如何使用数据表进行多次更新?

我找到了这个Update 1 row

我的代码:

public void ExportCSV(string SQLSyntax, string LeFile, bool Is_Ordre, int TypeDonne)
        {
            try
            {
                using (var connectionWrapper = new Connexion())
                {
                    var connectedConnection = connectionWrapper.GetConnected();


                    SqlDataAdapter da = new SqlDataAdapter(SQLSyntax, connectionWrapper.conn);
                    DataSet ds = new DataSet();
                    da.Fill(ds, "Emp");
                    DataTable dt = ds.Tables["Emp"];
                    CreateCSVFile(dt, LeFile, Is_Ordre, TypeDonne);

                    //Update all lines, it not save in Database
                    foreach (DataRow row in dt.Rows)
                    {
                        row["IS_IMPORT"] = true;
                    }
                }
            }
            catch (Exception excThrown)
            {
                throw new Exception(excThrown.Message);
            }



        }

问题是:

foreach (DataRow row in dt.Rows)
                        {
                            row["IS_IMPORT"] = true;
                        }

它不会将其保存到数据库中。

提前谢谢你, 史蒂夫

最佳答案

您需要首先将 DataAdapter 上的 UpdateCommand 属性设置为将执行以更新数据库中的行的 UPDATE 语句。

然后,在更新 DataTable 中的值后,您需要将其传递给 DataAdapter.Update()。 然后,这将为 DataTable 中的每个更新行执行 UpdateCommand。

引用资料:

MSDN - SqlDataAdapter.Update
MSDN-SqlDataAdapter.UpdateCommand

关于C# DataTable 更新多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8850883/

相关文章:

c# - 如何防止 JavaScript 中的循环导致浏览器或应用程序崩溃?

c# - 检查对象列表中的至少一个对象是否满足条件 x

c# - 在 C# 中,如何确定一个列表是否包含另一个列表中的任何项目?

jquery - 为什么 jQuery DataTables 国际化 i18n 对我不起作用?

hadoop - HIVE:应用定界符直到指定的列

angularjs - 自定义 ag-grid 以设置最大可选行数

c# - 嵌套 XML 形式的数据集

c# - 如何在没有连接字符串的情况下将 ASP.NET MVC 推送到 GitHub

python - 如何绘制多年来许多国家人口密度的 3d 散点图?

c# - 在 C# 中将泛型列表转换为数据集