marabunta
Goto Top

MSSQL USE Variable als Datenbasis

Hallo,

ich werde gerade sehr unglücklich mit MSSQL.
Ich habe eine Variable mit dem Databasename und wollte die für meine Schleife benutzen...(Etwas in jeder Datenbasis ausführen.)
1
    USE @Databasename
Das haut der mir raus. Über Google finde ich ausschließlich Workarounds, die mir auch noch sehr kompliziert erscheinen.
Ist kein Entwickler in all den Jahren auf die Idee gekommen den Befehl oben einfach zu realisieren?

Danke für jede Hilfe.

Content-ID: 293916

Url: https://administrator.de/forum/mssql-use-variable-als-datenbasis-293916.html

Ausgedruckt am: 13.04.2025 um 10:04 Uhr

emeriks
emeriks 24.01.2016 um 13:49:11 Uhr
Goto Top
Friemler
Friemler 24.01.2016 aktualisiert um 13:55:45 Uhr
Goto Top
Hallo Marabunta,

Dein Stichwort heißt "dynamisches SQL". Das bedeutet, dass Du das SQL Statement in eine String-Variable (z.B. @statement) schreibst und dann per sp_executesql ausführst:
1
2
3
DECLARE @statement nvarchar(MAX);
SET @statement = N"USE [" + @DatabaseName + N"];";  
EXEC sp_executesql @statement;

Gruß
Friemler

[EDIT]
Zu spät...
[/EDIT]