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.)
    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-Key: 293916

Url: https://administrator.de/contentid/293916

Printed on: May 7, 2024 at 12:05 o'clock

Member: emeriks
emeriks Jan 24, 2016 at 12:49:11 (UTC)
Goto Top
Member: Friemler
Friemler Jan 24, 2016 updated at 12:55:45 (UTC)
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:
DECLARE @statement nvarchar(MAX);
SET @statement = N"USE [" + @DatabaseName + N"];";  
EXEC sp_executesql @statement;

Gruß
Friemler

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