Ich würde gerne Ihre Meinung zu den besten Praktiken für die Installation einer Datenbank in SQL-Skripten erfahren.
PROBLEM A) In meinem Skript habe ich mehrere Batches zum Erstellen von Tabellen. Die Tabellen haben viele Fremdschlüssel zueinander. Im Moment muss ich die Batches in der richtigen Reihenfolge anordnen, um Konflikte mit den FK-Tabellen zu vermeiden. Ich würde gerne wissen, ob es eine gute Praxis ist, zuerst die Tabellen und alle Spalten ohne FK zu erstellen und am Ende des Skripts diese Tabellen zu ALTERN und FK hinzuzufügen.
PROBLEM B) Mein Skript soll verwendet werden, um verschiedene DB auf verschiedenen Servern zu erstellen. Die Datenbank könnte auf jeder Installation einen anderen Namen haben. Jetzt in meinem Skript erstelle ich eine Datenbank mit:
CREATE DATABASE NameX
und:
USE NameX
es zu benutzen.
Denn ich müsste das Skript für jede Installation manuell aktualisieren. Ich dachte, es wäre großartig, eine ZENTRALISIERTE Möglichkeit zur Benennung der Datenbank innerhalb des Skripts zu haben. Auf diese Weise würde die Änderung einer einfachen Variable die Datenbank mit meinem Namen und allen USE-Anweisungen erstellen. Ich habe versucht, LOCAL VARIABLES zu verwenden, aber ohne Erfolg, weil sie nach GO-Anweisungen aus dem Anwendungsbereich herausfallen. Ich habe keine Erfahrung in der Verwendung von sqlcmd und Variablen dort.
Haben Sie eine Idee, wie ich das Problem in meinem Skript lösen kann? PS: Ich verwende MS SQL 2008 und ich werde mein Skript in MS SMS laden.
Vielen Dank, Leute, für eure Hilfe, diese Gemeinschaft ist großartig :-)