如何在所有数据库的SQL Server上查找patricular表表?

时间:2016-06-29 06:46:25

标签: sql-server

我想在SQL Server中找到一个表,让我们说" XYZ"。我不知道它所在的DB。服务器有很多DB

2 个答案:

答案 0 :(得分:3)

SELECT * FROM sys.Tables
WHERE
name LIKE '%XYZ%'

您可以使用SP sp_Msforeachdb - 这将在您在服务器中的每个数据库上执行。

EXEC sp_Msforeachdb "USE [?]; SELECT '[?]' dbname, * 
FROM sys.tables
WHERE name like '%XYA%'"

答案 1 :(得分:0)

此查询将返回SQL实例上所有数据库中所有表的列表:

DECLARE @command varchar(1000) 
SELECT @command = 'USE ? SELECT name FROM sysobjects WHERE xtype = ''U'' AND Name LIKE ''%A'' ORDER BY name' 
EXEC sp_MSforeachdb @command