Sql 一揽子更新-是否自动回滚
假设我有这样一条SQL语句(在SQL Studio manager中执行): 假设有1000万人,您在查询完成之前停止运行查询。然后它将回滚还是仅在您单击“停止”时停止,例如500万行已更新,500万行未更新Sql 一揽子更新-是否自动回滚,sql,sql-server,Sql,Sql Server,假设我有这样一条SQL语句(在SQL Studio manager中执行): 假设有1000万人,您在查询完成之前停止运行查询。然后它将回滚还是仅在您单击“停止”时停止,例如500万行已更新,500万行未更新 我知道你可以在事务中包装更新。我想我是在问sql studio manager是否有自己的事务 sql server中有三种类型的事务,以及 自动提交模式是SQL Server的默认模式。每个语句在完成时都会提交或回滚 1) 如果语句成功完成,则它将被提交 2) 如果出现错误并引发任何错误
我知道你可以在事务中包装更新。我想我是在问sql studio manager是否有自己的事务 sql server中有三种类型的事务,以及 自动提交模式是SQL Server的默认模式。每个语句在完成时都会提交或回滚 1) 如果语句成功完成,则它将被提交 2) 如果出现错误并引发任何错误,则会回滚
假设在执行上述update语句时使用默认事务模式。因为出了问题(你停止了执行)。事务将回滚,数据将保持一致状态 所有语句都在事务中运行。对于单语句自动提交事务,它要么全部成功,要么全部失败。只要SQL Server识别出注意事件并在语句完成之前取消该语句,它就会回滚。@Martin Smith,请您澄清一下“识别注意事件”是什么意思。谢谢。第二个提到可能不会立即处理/
UPDATE Person SET Flag=1