Pasé un poco de tiempo haciendo un script simple que hizo esto por mí. Es un WIP, pero puse una página web (muy fea) delante de él y ahora está alojado aquí si quieres probarlo:
http://execsqlformat.herokuapp.com/
Ejemplo de entrada:
exec sp_executesql
N'SELECT * FROM AdventureWorks.HumanResources.Employee
WHERE ManagerID = @level',
N'@level tinyint',
@level = 109;
Y la salida:
BEGIN
DECLARE @level tinyint;
SET @level = 109;
SELECT * FROM AdventureWorks.HumanResources.Employee
WHERE ManagerID = @level
END
El formateo de la instrucción SQL real una vez que la extraigo de la entrada se realiza mediante la API en http://sqlformat .appspot.com