日期:2014-05-17 浏览次数:20726 次
SELECT SPD.name '名称' ,
SPM.name '参数名称' ,
STP.name '变量类型' ,
SPM.max_length '长度' ,
SPM.is_output '是否返回值'
FROM sys.procedures SPD
LEFT JOIN sys.parameters SPM ON SPD.object_id = SPM.object_id
LEFT JOIN sys.types STP ON SPM.system_type_id = STP.system_type_id
ORDER BY SPD.name
------解决方案--------------------
SELECT definition
FROM sys.sql_modules SM
WHERE EXISTS(SELECT 1 FROM sys.procedures SPD WHERE SM.object_id = SPD.object_id)
--获取后,替换所有的create procedure 为alter procedure,再替换所有的@parameter varchar(20) 为@parameter varchar(50)
--替换后,执行替换后代码即可。
--建议:还是一个一个来比较稳当些,毕竟存储过程的影响较大