Use pubs select name from sysobjects Where xType = 'P' And left(name, 3) <> 'sp_'
Filtramos por xType = ‘P’ que identifica a los procedimientos almacenados y descartamos los que empiezan por sp_ porque son de sistema (y nunca deberíamos llamar a nuestros procedimientos almacenados con el prefijo sp_)Cuando tenemos todos los procedimientos almacenamos con otra sentencia SQL buscamos sus parámetros:
USE PUBS
select s.name, t.name as tipo, s.length
from syscolumns s left join systypes t on s.xtype = t.xtype
left join sysobjects o on s.id = o.id Where o.name = 'reptq3'
Order by s.name
Funciona en SQL Server 2000, SQL Server 2005 y en SQL Server 2008.
Y esto es todo, feliz programming!!
Alex.