Ermitteln, ob eine Variable (-v) in der Befehlszeile definiert ist (SQLCMD)

8

Gibt es eine Möglichkeit zu sagen, ob eine Variable in der Befehlszeile mit SQLCMD definiert ist?

Hier ist meine Befehlszeile:

%Vor%

Inside ProdToTest_DB.sql Ich möchte eine Art bedingte IF setzen, um zu prüfen, ob die Variable existiert, und sie definieren, falls dies nicht der Fall ist.

%Vor%

Ich möchte, dass das Skript sowohl von der Befehlszeile als auch innerhalb von SSMS ausgeführt werden kann.

Vielen Dank im Voraus.

    
Gerhard Weiss 12.10.2010, 13:20
quelle

2 Antworten

12

Ich habe Varianten der folgenden Routine in zahlreichen von Befehlszeilenvariablen abhängigen Skripts verwendet. Hier ist "DataPath" der erforderliche Wert.

%Vor%     
Philip Kelley 12.10.2010, 13:48
quelle
0

Sie können mit einer try catch-Anweisung erreichen, was Sie wollen. Greifen Sie einfach auf eine Ihrer Variablen im Versuch zu, wenn dies einen Fehler erzeugt, definieren Sie sie im Catch.

    
Lew 01.05.2014 18:46
quelle