Muszę rozwiązać problem, który mam, i potrzebuję pomocy w zrozumieniu, jak działa sp_msforeachdb, aby rozwiązać mój problem.
Za każdym razem, gdy uruchamiam sp_msforeachdb, pojawia się błąd Msg 102, Level 15, State 1, Incorrect syntax near '61'
Przykład mojego kodu jest następujący:
EXEC SP_msforeachdb 'SELECT ''?'' AS Database
FROM ?.sys.objects
WHERE name like ''%aetna%''
Jednak nie ma znaczenia, jakie zapytanie mam jako parametr sp_msforeachdb. Za każdym razem pojawia się ten sam błąd. Mam bazę danych, która zaczyna się od „61s1d”, więc myślę, że ma problem z nazwą DB, ale szczerze mówiąc, nie wiem, co dzieje się za kulisami na sp_msforeachdb.
Warto zwrócić uwagę.
- Jest to jedyna baza danych, która zaczyna się od liczby
- Mogę spróbować użyć kodu takiego jak „Jeśli baza danych jest jak '% 61%', nie rób ......”, ale wciąż ten sam błąd.
- Nie mogę przetestować zmiany nazwy bazy danych - zbyt wiele rzeczy z nią związanych.
- Jeśli utworzę testową bazę danych, która zaczyna się od „51”, to również pojawia się błąd dla tej bazy danych
Jak mogę to przezwyciężyć?