根据SQL存储过程名取得存储过程的内容

3/21/2008来源:SQL技巧人气:10985

根据SQL存储过程名取得存储过程的内容:

示例如下:(此语句适用于SQL Server2000/2005)

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

--     GetContentByPRocedureName '[dbo].[存储过程名]'
Create procedure GetContentByProcedureName
(@ProcedureName nvarchar(500))
as 

if exists (select * from dbo.syscomments 
where id=object_id(N''[email protected]+'')) 
select c.text, c.encrypted, c.number, 
xtype=convert(nchar(2), o.xtype),    
 datalength(c.text), convert(varbinary(8000), 
c.text), 0 from dbo.syscomments c, dbo.sysobjects o   
where o.id = c.id and c.id = object_id(N''[email protected]+'') 
order by c.number, c.colid option(robust plan)

GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO