--定义局部游标
--获取所有用户定义存储过程的ID
DECLARE SP_Cursor CURSOR LOCAL FOR
SELECT id,name
FROM sysobjects
WHERE xtype = 'P'
ORDER BY name
DECLARE @id INT,@name NVARCHAR(max)
--打开游标
OPEN SP_Cursor
--使用游标读取下一条数据
FETCH NEXT FROM SP_Cursor INTO @id,@name
--获取给定ID的存储过程的参数
SELECT @name SP_NAME, a.name PARAM_NAME, b.name PARAM_TYPE, a.length LENGTH, a.isoutparam OUT_PARAMS
FROM syscolumns a
LEFT JOIN systypes b ON a.xusertype=b.xusertype
WHERE a.id=@id
--如果游标读取成功了
WHILE @@FETCH_STATUS=0
BEGIN
FETCH NEXT FROM SP_Cursor INTO @id,@name
SELECT @name SP_NAME, a.name PARAM_NAME, b.name PARAM_TYPE, a.length LENGTH, a.isoutparam OUT_PARAMS
FROM syscolumns a
LEFT JOIN systypes b ON a.xusertype=b.xusertype
WHERE a.id=@id
END
--关闭和释放游标
CLOSE SP_Cursor
DEALLOCATE SP_Cursor
[SQL] 使用游标获取所有用户存储过程的参数列表
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- GLUT,是指OpenGL Utility Toolkit,用于开发独立于窗口系统的OpenGL程序,即该库打包了...