123排行榜,探索世界,了解各类奇异学识!
123排行榜 > 综合 > 正文

SQL Server 中如何查看所有存储过程

时间:2024-03-03

相关推荐

在SQL Server中,存储过程是一种用于管理和执行数据库操作的重要工具。当需要快速查看所有存储过程时,可以使用特定的查询语句来列出它们。通过执行系统存储过程或查询系统表,可以轻松获得所需信息。这些信息包括存储过程的名称、参数、返回结果等。在SQL Server中,列出所有存储过程可以帮助数据库管理员更好地管理数据库对象,并为开发人员提供了方便的方式来了解数据库结构,以便进行进一步的开发工作。

下面小编要跟大家分享在SQL Server 中如何列出所有存储过程,简单的过程中其实暗藏玄机,还是要细心学习,喜欢还请记得收藏哦!

为了查找这些存储过程,你可以花时间在互联网搜索,查看一些你还未知道的存储过程,也许在一两个小时您可能会发现你想要...也许你很幸运的找到,其他人在他们的文章中列出所有的存储过程 ,函数和视图,并介绍了如何使用这些存储过程。

但其实,您可以在一分钟之内就可以自己列出这些存储过程、函数和视图的清单!这份名单甚至包括SQLServer中所有无文档的存储过程。通过这个清单,你就可以确定你所想要找的存储过程。

SQL Server 实际上保存了所有存储过程的列表,包括有文档的、无文档的,甚至是用户自定义的!所有这些信息,都包含在系统表中。最简单的方法是使用一个系统视图,特别是这个视图来查阅。

您也可以使用目录视图,但我的测试结果,发现这个视图会过滤掉一些储存过程。

您也可以使用系统储存过程sp_stored_procedures返回当前环境中的存储过程列表 ,但这个存储过程同样也限制了存储过程返回值。

通过对比,我觉得:如果想获得SQL Server 中所有的储存程序,建议使用这个系统视图,或这两个视图会因为某些未知原因,过滤掉一些内容,造成信息不全。

存储过程信息是存储在各自用户数据库中的系统表中的。SQL Server 保存了存储过程的唯一标识信息,如存储过程的名称、创建时间、修改时间、是否来自微软等等。

如何确保所有的用户数据库都能够自动创建这些存储过程呢?

当SQL Server部署完成后,微软提供的存储过程,是保存在master数据库中的。当您新建一个数据库时,master数据库将作为模板数据库,因此,master数据库中的所有存储过程将自动创建到你所新建的数据库中。

如果你想创建一个存储过程,并希望能够自动分发到所有的数据库中,你可以在master数据库中建立该存储过程,这样之后新创建的数据库中,将自动包含你新建的这个存储过程;但对于之前已经存在的数据库,你仍需要到每个数据库中手动创建这个存储过程。

一、列出所有的储存过程

以下代码列出了SQL Server 中存在的所有储存过程。

USE[your_database_name_here];

GO

SELECT*

WHERE([type]='P'OR[type]='X'OR[type]='PC')

ORDERBY[name];

GO

如果您已经安装了SQL Server ,并使用了所有的默认设置时,你将看到类似一下界面:

图1:列出所有的存储过程

上面这个命令,通过Type对象进行过滤。从下表中,你可以确定自己所需的对象的类型,然后根据你的实际情况,调整WHERE子句中的类型。

此列表仅列出了意见,职能和程序。

表1: type字段的类别及对象返回类型

二、用户自定义存储过程

在日常使用中,另一个字段“is_ms_shipped”也经常用来筛选记录。该字段用来判断存储过程是有微软发布的 ,如果最初是由微软发布的,则该字段的值为0;如果不是由微软发布的,则该字段的值为1 。

在上面的T-SQL语句的基础上,您只要增加个限制条件“and [ is_ms_shipped ] = 0 ”,就可以找到不是微软创建的存储过程,这些或许是你或者第三方软件商访问数据库时创建的。如果您只想看看微软提供的储存过程,只要将值从0到1即可 。

下面举例说明,通过一个T-SQL代码演示如何获取只有用户定义的存储过程。

USE[your_database_name_here];

GO

SELECT*

WHERE([type]='P'OR[type]='X'OR[type]='PC')

AND[is_ms_shipped]=0

ORDERBY[name];

GO

需要注意的是,这个语句的执行结果,因每个人的数据库的情况不同,而得到不同的记录列表。情况而异。执行之后,将看到类似下图的输出结果。

图2: 列出用户自定义的存储过程

三、小结

通过上面的例子可以看到,通过少量代码,我们就可以很容易地、快速地获得自己所用的SQL Server 的存储过程列表,你不必在一个个网站中搜索这些存储过程了。你可能会学到一个之前自己花了很大精力编写的复杂脚本,现在直接用一个存储过程就可以实现同样的效果了。

请记住,当使用一个不能确定

我们转型不易,新知识内容立足于正能量、实用,觉得《SQL Server 中如何查看所有存储过程》对你有帮助,请留言收藏!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
显示评论内容(6)
  1. lapland2024-03-03 22:12lapland[北京市网友]203.17.56.253
    Explorer,非常直观。
    顶0踩0
  2. 清林秋意2024-03-03 22:07清林秋意[澳门网友]203.2.209.17
    如果想要一次性查看所有存储过程的信息,可以用SSMS中的Object
    顶3踩0
  3. 五星红旗迎风飘扬2024-03-03 22:02五星红旗迎风飘扬[山西省网友]43.229.17.128
    Server中查看所有存储过程,很实用。
    顶4踩0
  4. 恍若尘2024-03-03 21:57恍若尘[山东省网友]45.114.238.37
    我通常会用查询系统表的方式在SQL
    顶0踩0
  5. 向往幸福2024-03-03 21:52向往幸福[福建省网友]203.29.28.0
    @四度陌言Server中,可以使用系统存储过程来查看所有存储过程的信息,非常方便。
    顶0踩0
  6. 四度陌言2024-03-03 21:47四度陌言[西藏网友]202.4.253.98
    在SQL
    顶0踩0
相关阅读
韩国灾难排行榜前十名豆瓣(请列出韩国恐怖电影排行前十的电影列表)

韩国灾难排行榜前十名豆瓣(请列出韩国恐怖电影排行前十的电影列表)

不是鬼片但胜似鬼片,属于惊悚犯罪题材,给观众带来的恐惧感可一点儿也不小

2023-05-13 #综合

山海经中十大战神(列出中国古代十大战神)

山海经中十大战神(列出中国古代十大战神)

●上榜理由:项羽少有大志,力能举鼎,自言:剑一人敌,不足学,学万人敌

2023-09-02 #讨论

最新研究:物理学家成功地将光存储后受控传输

最新研究:物理学家成功地将光存储后受控传输

这里所要指的光存储技术,是将光本身放在一个容器里存储起来,将这个容器受控传输,然后再将光有目的地从这个容器中取出来

2023-07-19 #自然地理

中国十大变态女(请列出当今中国十大最恶心女人)

中国十大变态女(请列出当今中国十大最恶心女人)

这种女人是自大狂,所以在贬低别人的时候就特别不留情面,所以我们见到这种女人时可以毫不犹豫地上去打

2023-01-22 #知识

科学家在单个DNA片段中存储2MB的数据(能保存几十万年)

科学家在单个DNA片段中存储2MB的数据(能保存几十万年)

DNA现在可以做什么?想像一下,你可以储存每一个你曾经产生或拥有的位元组讯息在单一个硬碟并且可以很安全完美的保存完整的数据几十万年。这样的储存设备

2023-06-29 #未解之谜