首页 > 解决方案 > 如何转换此现有查询以从位于链接服务器上的数据库中的表中检索相同的信息?

问题描述

我正在使用SQL Server 2014并且我有以下T-SQL查询,它为我提供了有关数据库上任何表的一些很好的信息。

USE [MyDatabase]

SELECT COLUMN_NAME,* 
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Table1' AND TABLE_SCHEMA='dbo'

我想修改这个查询,以便从链接服务器上的数据库中的表中获取相同的信息。

假设表的完整架构是 [xxx.xx.x.xx].Database2.dbo.[Table1],我该如何重写我现有的查询?

我看了这个Stackoverflow问题,但答案不符合我的要求:如何列出 SQL Server 中链接服务器数据库的所有表和列名称?

标签: sql-servertsqllinked-server

解决方案


使用 4 部分标识符:

[server].[database].[information_Schema].[columns]

[server]为链接服务器名称,
[database]为链接服务器中的相关数据库。


推荐阅读