我对 SQL Server 数据字典并不太熟悉,但我假设我正在尝试做的事情是可能的。
我们有许多复制的数据库,以不同的名称说: Client1 Client2 Client3
我不是依赖命名约定,而是希望根据它们是否包含一个键表来识别这些数据库,称之为 MyTable。因此开始考虑需要如下查询:
SELECT db.name
FROM sys.databases db
JOIN sys.tables tbl ON ??
WHERE tbl.Name = 'MyTable'
这不起作用,因为我看不到如何将 sys.tables 直接或间接连接到 sys.databases,而且 sys.tables 是基于活动数据库的视图,而不是所有数据库的完整表集.
谁能确定适合这种情况的查询?