Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在MS SQL server中执行update或delete语句时,需要了解事件流的帮助吗_Sql_Sql Server_Tsql - Fatal编程技术网

在MS SQL server中执行update或delete语句时,需要了解事件流的帮助吗

在MS SQL server中执行update或delete语句时,需要了解事件流的帮助吗,sql,sql-server,tsql,Sql,Sql Server,Tsql,在sql server中执行update/delete语句时,我无法正确理解事件流。根据以下理解,事件会发生,但仍处于混乱状态。请澄清此问题或发布详细的事件日志 A.)在完全恢复模式下对数据库执行的Update语句,并已提交 DB从磁盘读取页面(如果不在内存中),页面数据将被修改 在将mdf文件写入磁盘之前,将在Tlog文件中写入相同的内容,并且日志缓冲区会将其硬化到磁盘 在某些情况下,延迟写入程序或Tlog备份将强制MDF写入磁盘 但在这方面还有一些问题 B.)我总是假设,当您在SQL ser

在sql server中执行update/delete语句时,我无法正确理解事件流。根据以下理解,事件会发生,但仍处于混乱状态。请澄清此问题或发布详细的事件日志

A.)在完全恢复模式下对数据库执行的Update语句,并已提交

DB从磁盘读取页面(如果不在内存中),页面数据将被修改

在将mdf文件写入磁盘之前,将在Tlog文件中写入相同的内容,并且日志缓冲区会将其硬化到磁盘

在某些情况下,延迟写入程序或Tlog备份将强制MDF写入磁盘

但在这方面还有一些问题

B.)我总是假设,当您在SQL server中修改某些内容时,这些内容将首先写入日志文件,当出现检查点时,这些内容将被移动到MDF文件中


你能帮我理解哪一个是正确的,是A还是B吗?

最终我找到了我想在这里发布的答案,以防它可能会对某些人有所帮助

SQL Server 2012:SQL Server体系结构-查询的生命周期(第3部分)-简单更新查询 阅读更多