sql - 如何编写脚本来查找 SQL Server 数据库对象(如 storedproc 和 View )中使用的数据库?

标签 sql database object

我们在 SQL Server 2012 中的一个数据库(数据库 A)即将停用。我正在分析数据库 B 中使用数据库 A 作为数据源的所有 View 和 StoredProcs。如何编写查询来检索此信息。谢谢

最佳答案

我使用以下方法在 SQL Server 2008 中获取对象及其依赖项:

select *
from (select referenced_database_name, o.name as ViewName, ed.referenced_entity_name as TableName
      from sys.sql_expression_dependencies ed join
           sys.objects o
           on ed.referencing_id = o.object_id
      where referenced_database_name is not null
     ) vdep

您可以添加过滤器以过滤掉您感兴趣或不感兴趣的数据库:

where referenced_database_name = 'A'

关于sql - 如何编写脚本来查找 SQL Server 数据库对象(如 storedproc 和 View )中使用的数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15791384/

相关文章:

sql - 为什么 SQL 字段名有时拼写为 `this`?

python - 使用 python 创建 MySQL 数据库时遇到问题

java - 创建对象监听框架的最佳方法?

C# 给 PictureBox 添加一个选项

java - createQuery 与 createNativeQuery,更新/删除语句的性能差异

sql - 聚合返回 * 作为数组

sql - 如果 PostgreSQL 中不存在数据,则获取值为零

.net - 设计器生成的 DataSet 中的 NULL 值引发我不想要的异常

sql-server - 提取完整的登录设置

delphi对象分配与:=