【发布时间】:2011-03-04 04:48:19
【问题描述】:
我正在使用 MS SQL Server 2008 创建一个使用 INSERT SELECT 语句的查询:
插入 TABLE1 (col1, col2) 从 TABLE2 中选择 col1, col2
现在这个查询的执行是在一个事务中:
伪代码:
try
{
begin transaction;
query;
commit;
}
catch
{
rollback;
}
如果 TABLE2 有大约 40m 行,在对 TABLE1 进行插入的那一刻,如果在 INSERT 中间出现错误,INSERT SELECT 语句会自己回滚还是我需要使用事务保持数据完整性?
有必要使用事务吗?或 SQL SERVER 它自己为这种类型的句子使用事务。
【问题讨论】:
标签: sql sql-server