在SQL Server中一次插入/删除大量记录

在SQL Server中一次插入/删除大量记录,sql,sql-server,database,bulk,Sql,Sql Server,Database,Bulk,我希望在SQL中的一个新表1中插入大约100000条只包含预定义ID号的记录,然后创建一个delete语句,查看新表1中的这些记录,以删除另一个表2中的匹配记录。表2中的匹配记录将是第二个表2中的主键 在插入或删除这么多记录时,我是否应该担心服务器陷入困境?这样一个查询有这么多记录,或者说有1000万条记录,是否真的可以关闭SQL Server或服务器本身 我不太熟悉SQL查询性能方面的东西,我不想只运行一个查询来插入或删除大量记录(如果可能会产生严重后果)。任何插入、更新、删除超过5000次的

我希望在SQL中的一个新表1中插入大约100000条只包含预定义ID号的记录,然后创建一个delete语句,查看新表1中的这些记录,以删除另一个表2中的匹配记录。表2中的匹配记录将是第二个表2中的主键

在插入或删除这么多记录时,我是否应该担心服务器陷入困境?这样一个查询有这么多记录,或者说有1000万条记录,是否真的可以关闭SQL Server或服务器本身


我不太熟悉SQL查询性能方面的东西,我不想只运行一个查询来插入或删除大量记录(如果可能会产生严重后果)。

任何插入、更新、删除超过5000次的事务都会从行级锁进行锁升级,并以独占方式锁定整个表,在事务期间,直到您提交或回滚。因此,您应该始终尝试在小于5000个rowsHi@marc_的块中执行批量操作。谢谢,在这种情况下,是否有一个简单的查询可以一次删除5000个记录的块?我在想类似于从表1中删除的东西,其中ID在从表2中选择ID