Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.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
更新查询的SQL Server事务日志_Sql_Sql Server - Fatal编程技术网

更新查询的SQL Server事务日志

更新查询的SQL Server事务日志,sql,sql-server,Sql,Sql Server,我在SQL Server中有一个数据库。我是SQL Server新手,所以我还有很多东西需要了解。现在我有一个表Student。当我更新表中的一行时,我希望在事务日志中看到更新了什么值,然后我希望将其恢复为旧值。您不能简单地查看事务日志并获取列的上一个值。要获取以前的值,您需要还原事务日志备份 如果您需要轻松访问所有过去的值,我建议您创建一个StudentAuditLog表。在修改Student表上的数据之前,将旧值插入StudentAuditLog,然后更新Student表。还原很简单:在开始

我在SQL Server中有一个数据库。我是SQL Server新手,所以我还有很多东西需要了解。现在我有一个表
Student
。当我更新表中的一行时,我希望在事务日志中看到更新了什么值,然后我希望将其恢复为旧值。

您不能简单地查看事务日志并获取列的上一个值。要获取以前的值,您需要还原事务日志备份


如果您需要轻松访问所有过去的值,我建议您创建一个StudentAuditLog表。在修改Student表上的数据之前,将旧值插入StudentAuditLog,然后更新Student表。

还原很简单:在
开始事务中执行更新,并在最后执行
回滚。如果您想出于教育目的研究事务日志,则只能使用未记录的命令。查找有关
fn\u dblog
功能的信息。在生产代码中,事务日志应被视为由服务器维护的黑盒;应用程序无法访问其内容。