Ich muss ein Problem beheben, das ich habe, und ich brauche Hilfe, um zu verstehen, wie sp_msforeachdb funktioniert, um mein Problem zu beheben.
Jedes Mal, wenn ich sp_msforeachdb ausführe, wird eine Fehlermeldung angezeigt Msg 102, Level 15, State 1, Incorrect syntax near '61'
Ein Beispiel für meinen Code lautet wie folgt:
EXEC SP_msforeachdb 'SELECT ''?'' AS Database
FROM ?.sys.objects
WHERE name like ''%aetna%''
Es spielt jedoch keine Rolle, welche Abfrage ich als Parameter für sp_msforeachdb habe. Jedes Mal bekomme ich den gleichen Fehler. Ich habe eine Datenbank, die mit '61s1d' beginnt, sodass ich denke, dass es ein Problem mit dem DB-Namen gibt, aber ich weiß ehrlich gesagt nicht, was sich hinter den Kulissen von sp_msforeachdb abspielt.
Dinge zu beachten.
- Es ist die einzige Datenbank, die mit einer Nummer beginnt
- Ich kann versuchen, Code wie "Wenn die Datenbank '% 61%' ist, nicht tun ......" zu verwenden, aber immer noch den gleichen Fehler.
- Ich kann das Ändern des Datenbanknamens nicht testen - zu viele damit verbundene Dinge.
- Wenn ich eine Testdatenbank erstelle, die mit '51' beginnt, wird auch der Fehler für diese Datenbank angezeigt
Wie kann ich das überwinden?