Datenbanken und mehr

10. Mai 2007

Bin ich hier richtig?

Filed under: T-SQL — Urs Gehrig @ 21:29

Ups, da bin ich ja Heute eben nochmals mit einem blauen Auge davon gekommen. Wie gut, dass ich rechtzeitig an meine Rückversicherung gedacht habe. Und das ist mir passiert:

In einem Kundenprojekt habe ich die Aufgabe eine ganze DB zu duplizieren; von einer Instanz zur anderen. Aus diversen Gründen haben wir uns für einen Weg via T-SQL Script entschieden: erst werden auf der Ziel DB alle Tabellen gelöscht (DROP TABLE) und anschliessend rüber kopiert (SELECT INTO). Eine ziemlich gefährliche Sache! Kaum auszudenken was passieren würde, wenn das Script auf der falschen Instanz ausgeführt wird. Und genau dies ist mir in einer unachtsamen Minute passiert. Aber eben, zum Glück war da meine Rückversicherung. Bevor der eigentliche Lösch/Kopier-Prozess beginnt, überprüfe ich, ob ich auch auf dem richtigen Server bin. Wenn nicht, breche ich mit einer Fehlermeldung ab. Das ganze sieht in etwa wie folgt aus:

— ***************************************************************************
— Be sure you’re on the right server
!
— ***************************************************************************
DECLARE @IS nvarchar(50)
SET @IS = N’myTestServer\myTestInstance‘

IF @@SERVERNAME <> @IS
BEGIN
    RAISERROR (N’You are on the wrong server. Only valid server is (%s).
                 Process aborted!‘
               ,16 — Severity -> exit Try-Block
               ,1  — State
               ,@IS)  WITH NOWAIT;
    RETURN
END
PRINT N’Server check passed! Process starts… ‚
    …
    …

Bin ich hier richtig? Nicht so entscheidend, solange die Rückversicherung stimmt! Ich hoffe auch du hast eine.

Advertisements

Schreibe einen Kommentar »

Es gibt noch keine Kommentare.

RSS feed for comments on this post. TrackBack URI

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

Erstelle eine kostenlose Website oder Blog – auf WordPress.com.

%d Bloggern gefällt das: