One could use sp_msForEachDB builtin stored procedure. No cursor, no loop, and less chance to get into security issues.
Not quite right. If you look at the actual code sp_msForEachDB and the procedure that calls, its a cursor/loop on steroids. 😉
--Jeff Moden
RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row. First step towards the paradigm shift of writing Set Based code: ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.
Change is inevitable... Change for the better is not.