MSSQL网页编程之SQL Server 2005 数据库快照(database...
使为了数据安全,我们搭建了主从。但实时主从备份只能防止硬件问题,比如主库的硬盘损坏。但对于误操作,则无能为力。比如在主库误删一张表,或者一个update语句没有指定where条件,导致全表被更新。server|数据|数据库数据库快照(atabasesnapshot)是一个只读的,静态的数据库视图。一个数据库能够有多个数据库快照,每一个数据库快照在被显性的删除之前将一向存在。数据库快照将坚持和源数据库快照被创立时候分歧,以是可被用来做一些报表。而且因为数据库快照的存在,我们能够很简单的把数据库复兴到快照创立时候。数据库快照供应了一个把数据库复兴到一个特准时间点的无效路子。一个数据库快照将纪录从这个数据库快照被创立后已提交的一切事件,如许你在对数据库举行毛病操纵后也不会收回“假如上天可以再给我一次时机的话,我。。。。。。”的感伤。因为是只纪录数据库产生的改动,也不是在以后的那一时候数据库的形态,以是数据库文件其实不会很年夜,以下例:
--我们先来为数据库Northwind创立一个数据库快照,定名为NORTHWIND_DBSS1200,并让此数据库快照的文件存储在C:NORTHWIND_DATA_1200.SS文件中
CREATEDATABASENORTHWIND_DBSS1200ON
(NAME=NORTHWIND,FILENAME=
C:NORTHWIND_DATA_1200.SS)
ASSNAPSHOTOFNORTHWIND;
GO
--能够看到这个数据库快照文件的属性,以下:能够看到如今Sizeondisk为128K
USENORTHWIND
GO
--如今Northwind数据库举行更新操纵
UPDATEDBO.CUSTOMERS
SETCOMPANYNAME=NEWEGG.COM
--能够看到如今Sizeondisk为384K
--看一下Northwind数据库中被更新的列中存储的内容是已被更新过的
SELECTDISTINCTCOMPANYNAMEFROMNORTHWIND.DBO.CUSTOMERS
--看一下NORTHWIND_DBSS1200数据库中被更新的列中存储的内容仍是被更新之前的内容
SELECTDISTINCTCOMPANYNAMEFROMNORTHWIND_DBSS1200.DBO.CUSTOMERS
--IFANERRORDAMAGESADATABASE,YOUMAYCHOOSETOREVERTTHEDATABASETOADATABASESNAPSHOTTHATPREDATESTHEERROR.REVERTINGOVERWRITESTHEORIGINALSOURCEDATABASEWITHTHEREVERTEDDATABASE.
RESTOREDATABASENORTHWINDFROM
DATABASE_SNAPSHOT=NORTHWIND_DBSS1200
GO
--确认
SELECTDISTINCTCOMPANYNAMEFROMNORTHWIND.DBO.CUSTOMERS
--删除数据库快照
DROPDATABASENORTHWIND_DBSS1200
从数据库快照中恢单数据库到快照创立的时候
mysql使用内部操作字符集gbk来进行操作,即执行"SELECT*FROMtestWHEREname=xxxor1=1/*LIMIT1";从而注入成功 入门没那么困难,精通没那么容易 sqlserver的痛苦之处在于有用文档的匮乏,很多只是表明的东西 理解了存储结构,再阅读下性能优化的章节基本上会对sqlserver有个清晰地认识 having子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having条件显示特定的组,也可以使用多个分组标准进行分组。 你可以简单地认为适合的就是好,不适合就是不好。 也可谈一下你是怎么优化存储过程的? 只能告诉你,学好数据库语言和原理,多见识几种数据库软件,比一棵树上吊死要好。 我是一个ERP初学者,对于前台运用基本熟悉,但对于后台SQLServer的运用一点也不懂,特想学习下相关资料。至少懂得一些基本的运用。希望各位能给于建议,小弟再谢过!
页:
[1]