gpt4 book ai didi

sql - 在 SQL Server Management Studio 中,如何找出哪些数据库中的哪些表具有具有给定名称的列?

转载 作者:行者123 更新时间:2023-12-02 00:46:53 36 4
gpt4 key购买 nike

在 SQL Server 2016 Management Studio 中,我有多个数据库。

我想找出哪些数据库中的哪些表有一个名称包含字符串的列。我该怎么做?

是否可以在对象资源管理器窗口中进行搜索?

最佳答案

您可以使用sp_MSForeeachdb

此方法将为您服务器上的每个数据库收集INFORMATION_SCHEMA.COLUMNS

Select * Into #TempFields From INFORMATION_SCHEMA.COLUMNS where 1=0

Declare @SQL varchar(max)=';Use [?]; Insert Into #TempFields Select * From INFORMATION_SCHEMA.COLUMNS '
Execute master.sys.sp_MSforeachdb @SQL
Select * from #TempFields
Where Column_Name Like '%XYZ%'

EDIT - Requested Commentary

第一个查询创建一个 EMPTY 结构来保存 Information_Schema

然后我们声明@SQL,其中包含我们要为每个数据库执行的 SQL。注意 ;Use [?];

然后我们只需选择#Temp 表以获得所需的结果

关于sql - 在 SQL Server Management Studio 中,如何找出哪些数据库中的哪些表具有具有给定名称的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43051165/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com