SQL Server - 插入多个值 - 正确的方法是什么?

时间:2013-12-01 07:12:42

标签: c# .net sql-server

我有一个适用于SQL Server的.NET应用程序。此应用程序从远程第三方API获取数据,我需要在事务中将该数据插入到我的数据库中。

首先,我从表中删除所有现有数据,然后插入从API获得的每一行数据。

我编写了一个接受参数并执行插入的存储过程。然后我用一个来自.NET的事务调用该存储过程。

我猜这有更聪明的方法吗?

由于

1 个答案:

答案 0 :(得分:0)

如果你做了数千甚至数万,你可能最擅长表值parameters

如果你做的不止于此,你应该考虑做专用的SQL服务器批量插入feature。如果我没记错的话,这在交易方面可能不会很好。

无论哪种方式,truncate都比删除更快。

我过去为避免需要交易而做的是创建两个表,并使用另一个表来决定哪个是活动表。这样,你总是有一个包含有效数据的表,没有写锁。