Jak zapisać wyjście MSSQL PRINT do zmiennej

Na MS SQL 2008 R2 chcę mieć możliwość wychwytywania danych wyjściowych wiadomości do zmiennej. Muszę uruchomić skrypt na wielu bazach danych. Złap wyjście komunikatu (komunikaty z print lub raiserror) i zaloguj go do tabeli. Muszę to zrobić od wewnątrz procedury składowanej.

Dla tego skryptu

<code>Declare @sqlscript nvarchar(500)

Set @sqlscript = 
'select * from sys.objects
raiserror (''My raised error'', 10,1)
select * from sys.schemas
print ''my print'''

EXEC sp_executesql @sqlscript
</code>

chciałbym dostać

<code>My raised error    
my print
</code>

lub

<code>(60 row(s) affected)  
My raised error

(21 row(s) affected)  
my print
</code>

Aktualizacja
Zdecydowałem się pójść z sugestią @rs. Logowanie do stołu jest dla mnie najłatwiejszym sposobem. Używając SP do logowania (aby utrzymać kod w czystości), plus mały wyrażeń regularnych do refaktoryzacji wszystkich moich skryptów. Rozwiązanie będzie gotowe na jutro. Wielkie dzięki.

questionAnswers(1)

yourAnswerToTheQuestion