[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;

 

posted @ 2021-03-01 12:06  炎峰森林影  阅读(246)  评论(0编辑  收藏  举报