06.05.2010, 10:30
Will man alle Datenbanken, bspw. auf einem Testserver, in den Wiederherstellungsmodell »Einfach« versetzen, so kann man das ganz einfach per TSQL Statement vornehmen
use master
SELECT 'ALTER DATABASE [' + name + '] SET RECOVERY SIMPLE' from master..sysdatabases where name not in ('master','model','msdb','tempdb')
Der obige SELECT erzeugt die Statements, die man dann ausführen muss, um das Wiederherstellungsmodell zu verändern.
Alternativ kann man so die Datenbank auch in die anderen beiden Wiederherstellungsmodi versetzen. Hierfür muss »SIMPLE« im obigen Statement nur durch »FULL« oder »BULK_LOGGED« ersetzt werden. Will man diesen Vorgang automatisieren, so kann man hierfür bspw. eine Stored Procedure erstellen, die Nachts automatisch als Auftrag vom SQL Server ausgeführt wird. So könnte hier ein simples Beispiel aussehen:
CREATE PROCEDURE SetRecoveryMode
AS
BEGIN
SET NOCOUNT ON
DECLARE @ToDo TABLE
(
ID int IDENTITY PRIMARY KEY,
Statement nvarchar(max),
Completed bit
)
INSERT INTO @ToDo (Statement, Completed)
SELECT 'ALTER DATABASE [' + name + '] SET RECOVERY SIMPLE', 0
from master..sysdatabases where name not in ('master','model','msdb','tempdb')
DECLARE @CurrentID int
DECLARE @CurrentStatement nvarchar(max)
WHILE EXISTS (SELECT * FROM @ToDo WHERE Completed = 0)
BEGIN
SELECT TOP 1 @CurrentID = ID,
@CurrentStatement = Statement
FROM @ToDo
WHERE Completed = 0
ORDER BY ID ASC
EXEC (@CurrentStatement)
UPDATE @ToDo
SET Completed = 1
WHERE ID = @CurrentID
END
SET NOCOUNT ON
END
29.04.2010, 20:25
Ist man auf der Suche nach einer Datenbank, die schon Fehler enthält, so muss man diese nicht mühselig, durch bspw. ausstellen des Servers erstellen, so kann unter dem folgenden Link fündig werden. Ganz praktisch wenn man bestimmte entwickeln möchte, für die man eine defekte Datenbank benötigt, weil man sonst gar keine Ergebnisse erhält.
Sample corrupt databases to play with
18.01.2010, 22:03
Wenn man eine SQL Server Datenbank in eine “normale” Datei exportieren will, dann kann man das leider nicht mit Bordmitteln machen, die einem bspw. das Management Studio zur Verfügung stellt. Microsoft bietet hierfür aber ein kostenloses Tool an, dass genau diese Aufgabe übernehmen kann.
___
Quelle: MSSQL Export in eine normale Datei mit create und insert statements