gpt4 book ai didi

linq-to-sql - 使用 Linq to SQL 进行 MERGE

转载 作者:行者123 更新时间:2023-12-04 05:59:14 26 4
gpt4 key购买 nike

SQL Server 2008 Ent
ASP.NET MVC 2.0
LINQ 到 SQL

我正在建立一个游戏网站,跟踪特定玩家(卡通)何时击倒特定怪物(老板)。表看起来像:

int ToonId
int BossId
datetime LastKillTime

我使用 3d 派对服务,它为我提供最新信息(卡通、老板、时间)。
现在我想用这些新信息更新我的数据库。
蛮力方法是逐行插入。但它看起来很难看(代码方面),而且可能也很慢。

我认为更好的解决方案是插入新数据(使用临时表?)然后运行 ​​MERGE 语句。

这是个好主意吗?我知道临时表是“最好避免的”。我应该为此操作创建一个永久的“临时”表吗?
或者我应该只读取整个当前集(最多 100 行),合并并从应用程序中放回?

任何指针/建议总是受到赞赏。

最佳答案

ORM 是执行批处理操作的错误工具,Linq-to-SQL 也不异常(exception)。在这种情况下,我认为您选择了正确的解决方案:快速将所有条目存储在临时表中,然后使用合并执行 UPSERT。

将数据存储到临时表的最快方法是使用 SqlBulkCopy将所有数据存储到您选择的表中。

关于linq-to-sql - 使用 Linq to SQL 进行 MERGE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3188075/

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