slqserver 2005 Snapshot技术 能通过Snapshot来每天备份单独表的字段变化么?并记录到另一个新表里? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 sql2005快照(snapshot)的建立数据库快照(atabase snapshot)是一个只读的,静态的数据库视图。一个数据库可以有多个数据库快照,每个数据库快照在被显性的删除之前将一直存在。数据库快照将保持和源数据库快照被创建时刻一致,所以可被用来做一些报表。并且由于数据库快照的存在,我们可以很容易的把数据库回复到快照创建时刻。数据库快照提供了一个把数据库回复到一个特定时间点的有效途径。一个数据库快照将记录从这个数据库快照被创建后已经提交的所有事务,这样你在对数据库进行错误操作后也可以方便恢复。由于是只记录数据库发生的改变,也不是在当前的那一时刻数据库的状态,所以数据库文件并不会很大,如下例:--我们先来为数据库Northwind创建一个数据库快照,命名为NORTHWIND_DBSS1200,并让此数据库快照的文件存储在C:\NORTHWIND_DATA_1200.SS文件中CREATE DATABASE NORTHWIND_DBSS1200 ON( NAME = NORTHWIND, FILENAME = 'C:\NORTHWIND_DATA_1200.SS' )AS SNAPSHOT OF NORTHWIND;GO--可以看到这个数据库快照文件的属性,如下:可以看到现在Size on disk为128KUSE NORTHWINDGO--现在Northwind数据库进行更新操作UPDATE DBO.CUSTOMERSSET COMPANYNAME='NEWEGG.COM'--可以看到现在Size on disk为384K--看一下Northwind数据库中被更新的列中存储的内容是已经被更新过的SELECT DISTINCT COMPANYNAME FROM NORTHWIND.DBO.CUSTOMERS--看一下NORTHWIND_DBSS1200数据库中被更新的列中存储的内容还是被更新以前的内容(这一句很重要)SELECT DISTINCT COMPANYNAME FROM NORTHWIND_DBSS1200.DBO.CUSTOMERS--如果出现操作错误损坏了数据库,你可以选择将数据库恢复到快照建立时的状态RESTORE DATABAS NORTHWIND FROMDATABASE_SNAPSHOT = 'NORTHWIND_DBSS1200'GO--确认SELECT DISTINCT COMPANYNAME FROM NORTHWIND.DBO.CUSTOMERS--删除数据库快照DROP DATABASE NORTHWIND_DBSS1200从数据库快照中恢复数据库到快照创建的时刻 参考. 难道是这个?http://technet.microsoft.com/zh-cn/library/ms189548(SQL.90).aspx 毕业在即,小弟求指导~~ SQL统计语句 如何设置字段是不能重复的 一句SQL语句的写法,请指教!在线等待! 請問一個取整的函數:謝謝 数据库死了打不开了 ,请指点 请问如何新建SQL Server的登陆ID? 怎样向数据库输入数学化学公式 identity的列,当增加到其最大值后,会发生什么情况? Access打开数据库是出错!!! 多表动态行转列问题 sqlserver2008数据库还原
--我们先来为数据库Northwind创建一个数据库快照,命名为NORTHWIND_DBSS1200,并让此数据库快照的文件存储在C:\NORTHWIND_DATA_1200.SS文件中
CREATE DATABASE NORTHWIND_DBSS1200 ON( NAME = NORTHWIND, FILENAME = 'C:\NORTHWIND_DATA_1200.SS' )AS SNAPSHOT OF NORTHWIND;GO
--可以看到这个数据库快照文件的属性,如下:可以看到现在Size on disk为128K
USE NORTHWINDGO
--现在Northwind数据库进行更新操作UPDATE DBO.CUSTOMERSSET COMPANYNAME='NEWEGG.COM'--可以看到现在Size on disk为384K
--看一下Northwind数据库中被更新的列中存储的内容是已经被更新过的SELECT DISTINCT COMPANYNAME FROM NORTHWIND.DBO.CUSTOMERS
--看一下NORTHWIND_DBSS1200数据库中被更新的列中存储的内容还是被更新以前的内容(这一句很重要)
SELECT DISTINCT COMPANYNAME FROM NORTHWIND_DBSS1200.DBO.CUSTOMERS--如果出现操作错误损坏了数据库,你可以选择将数据库恢复到快照建立时的状态
RESTORE DATABAS NORTHWIND FROMDATABASE_SNAPSHOT = 'NORTHWIND_DBSS1200'GO--确认SELECT DISTINCT COMPANYNAME FROM NORTHWIND.DBO.CUSTOMERS
--删除数据库快照DROP DATABASE NORTHWIND_DBSS1200
从数据库快照中恢复数据库到快照创建的时刻
参考.
http://technet.microsoft.com/zh-cn/library/ms189548(SQL.90).aspx