[MSSQL]跨数据库查询

DECLARE @server SYSNAME='服务器IP';
DECLARE @username SYSNAME='用户名';
DECLARE @password SYSNAME='密码';
DECLARE @alias SYSNAME=@server;

EXEC SP_ADDLINKEDSERVER @alias,'','SQLOLEDB',@server;
EXEC SP_ADDLINKEDSRVLOGIN @alias,'false',NULL,@username,@password;

EXEC('SELECT * FROM [' + @alias + '].[master].[dbo].[sysdatabases]');
--
SELECT * FROM 【别名】.[master].[dbo].[sysdatabases]  -- 别名建议带上中括号

EXEC SP_DROPLINKEDSRVLOGIN @alias,NULL;
EXEC SP_DROPSERVER @alias;
个性签名:做要做好,做到不三不四不如不做。
原文地址:https://www.cnblogs.com/hcbin/p/14462856.html