I need to troubleshoot an issue I am having, and I need some help understanding how sp_msforeachdb works in order to overcome my issue.
What happens is every time I run sp_msforeachdb, I get an error Msg 102, Level 15, State 1, Incorrect syntax near '61'
An example of my code is as follows:
EXEC SP_msforeachdb 'SELECT ''?'' AS Database
FROM ?.sys.objects
WHERE name like ''%aetna%''
However, it does not matter what query I have as a parameter to sp_msforeachdb. Every time I get the same error. I do have a database that starts with '61s1d', so that makes me think it has an issue with the DB name, but I honestly do not know what is going behind the scenes on sp_msforeachdb.
Things to note.
- It is the only database that starts with a number
- I can try to use code like "If database is like '%61%' don't do ......", but still the same error.
- I cannot test changing the database name--too many things connected to it.
- If I create a test db that starts with '51', then I also get the error for that database
How can I overcome this?