Beim Versuch, mein SQL-Skript im SQLCMD-Modus aufzuräumen, stieß ich auf ein Problem:
:setvar db_suffix "some_suffix"
:setvar some_db "some_db_$(db_suffix)"
print 'some_db: $(some_db)'
Die Ausgabe davon ist:
some_db: some_db_$(db_suffix)
Was ich jedoch erwartet hatte, war:
some_db: some_db_some_suffix
Gibt es eine Möglichkeit, eine solche variable Interpolation durchzuführen?
(Beachten Sie, dass T-SQL-Funktionen wie CONCAT()
nicht funktionieren, da ich die Variable als Datenbanknamen verwenden werde.)