读书人

【提问】SQL Server中有没有底据字典可

发布时间: 2012-09-01 09:33:03 作者: rapoo

【提问】SQL Server中有没有数据字典可以查询数据库中有哪些带参数的存储过程?
如题,能查询出带参数的存储过程有哪些,参数分别是什么,参数的类型是什么。

多谢指教!

[解决办法]

SQL code
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_idORDER BY SPD.name
[解决办法]
探讨
存储过程中怎样替换一段文本,比如:我想把变量的数据类型长度放大:@Param Varchar(20)改为:@Param Varchar(50)

[解决办法]
SQL code
SELECT definitionFROM sys.sql_modules SMWHERE EXISTS(SELECT 1 FROM sys.procedures SPD WHERE SM.object_id = SPD.object_id)--获取后,替换所有的create procedure 为alter procedure,再替换所有的@parameter varchar(20) 为@parameter varchar(50)--替换后,执行替换后代码即可。--建议:还是一个一个来比较稳当些,毕竟存储过程的影响较大 

读书人网 >SQL Server

热点推荐