日期:2014-05-19  浏览次数:20511 次

急!知道函数的名称,怎么读取函数的参数信息?
需要读取函数的参数的名称、类型等

------解决方案--------------------
参见
sysobjects
syscomments
------解决方案--------------------
select b.name,b.length from sysobjects a Inner Join syscolumns b on a.id=b.id inner join systypes c on b.xtype=c.xtype
where a.id=object_id( '函数名 ')
------解决方案--------------------
try:


/*
功能:返回某一表的所有字段、存储过程、函数的参数信息
设计:OK_008
时间:2006-05
*/
CREATE FUNCTION FN_GetObjColInfo
(@ObjName varchar(50))
RETURNS @Return_Table TABLE(
TName nvarchar(50),
TypeName nvarchar(50),
TypeLength nvarchar(50),
Colstat Bit
)
AS
BEGIN
INSERT @Return_Table
select b.name as 字段名,c.name as 字段类型,b.length/2 as 字段长度,b.colstat as 是否自动增长
from sysobjects a
inner join syscolumns b on a.id=b.id
inner join systypes c on c.xusertype=b.xtype
where a.name =@ObjName
order by B.ColID
RETURN
END
/*
eg:
SELECT * FROM dbo.FN_GetObjColInfo( 'SP_CheckOriginalData ')
--SP_CheckOriginalData 为存储过程名,也可以提取自定义函数和表等信息
*/



------解决方案--------------------
declare @func_name varchar(100)
set @func_name = 'pqs_Split '

select text from syscomments where id=object_id(@func_name)

sp_helptext @func_name