只是一个快速而简单的问题:在PostgreSQL中,如果可能的话,如何使用只使用SELECT语句的表列出所有存储函数/存储过程的名称?如果一个简单的SELECT不够,我可以使用存储的函数.
我认为,我的问题与其他问题有些类似,但另一个问题是针对SQL Server 2005:
表中的存储过程列表
(可选)就此而言,您如何以相同的方式列出使用同一个表的触发器和约束?
在我相当大的数据库中,我想知道在整个模式(SP,函数,表,触发器......)中引用列的所有地方.我不想只进行文本搜索,因为这将获取注释,并且还会从其他表中找到类似命名的列.
有谁知道我是否可以这样做?我使用SQL Server 2008.
我们在工作中遇到大量遗留存储过程的问题.你们推荐任何可以帮助你更好地理解这些程序的工具吗?某种逆向工程,它识别过程间依赖性和/或过程与表依赖性.可以是免费或商业工具.
谢谢!
是否可以在不解析源的情况下选择插入,更新或删除记录的所有sproc名称列表?我需要创建一个TSQL实用程序脚本来执行此操作.效率不是问题,因为它每年只运行几次(诅咒者我的意思是光标是可以的).理想情况下,此脚本不包含对temp或local变量表的更新.
我尝试了在SO Question上找到的以下查询.
SELECT
so.name,
so2.name,
sd.is_updated
from sysobjects so
inner join sys.sql_dependencies sd on so.id = sd.object_id
inner join sysobjects so2 on sd.referenced_major_id = so2.id
where so.xtype = 'p' -- procedure
and
is_updated = 1 -- proc updates table, or at least, I think that's what this means
Run Code Online (Sandbox Code Playgroud)
但它产生假阴性.