gpt4 book ai didi

c# - 如何用另一个数据表更新数据表?

转载 作者:太空宇宙 更新时间:2023-11-03 12:32:44 25 4
gpt4 key购买 nike

我想用这样的方式连接两个数据表:

update u
set datatable1.column["state"]= datatable2.column["state"]
from datatable1 u
inner join datatable2 s on
u.column["header"]= s.column["header"]

linq 的语法是什么?

最佳答案

您不应尝试在 LINQ 查询 中修改某些内容。如果 LINQ 查询导致副作用,这是不好的做法。但是你可以收集你需要更新的信息:

var updateQuery = from r1 in datatable1.AsEnumerable()
join r2 in datatable2.AsEnumerable()
on r1.Field<string>("header") equals r2 .Field<string>("header")
select new { r1, r2 };
foreach(var x in updateQuery)
{
x.r1.SetField("state", x.r2.Field<string>("state"));
}

查询实际上只是一个查询,它只在foreach 处执行一次,而且每次您将访问updateQuery 时-由于 LINQ 的延迟执行而产生的变量。如果你不想要这个,你必须创建一个集合,f.e.使用 ToListToArray

关于c# - 如何用另一个数据表更新数据表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42090818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com