sqlserver 跨库查询

一 在同一个服务器上

1744252582899.png
SELECT PCSNo FROM SMES_Test..tblWIPCont_PCSNo

只要 SMES_Test..表名即可

二 不在同一个服务器上

1 创建连接,只能创建一次
    -- 创建链接服务器
    EXEC sp_addlinkedserver 
        @server = 'erp2',
        @srvproduct = '',
        @provider = 'SQLNCLI', 
        @datasrc = '10.0.6.218';
    
    -- 设置登录映射
    EXEC sp_addlinkedsrvlogin
        @rmtsrvname = 'erp2',
        @useself = 'false',
        @locallogin = NULL,
        @rmtuser = 'sa',
        @rmtpassword = 'abc@123';
2 执行查询(创建完连接,不许再次创建)
SELECT * FROM erp2.UFDATA_102_2021.dbo.rdrecords10

EXEC sp_dropserver 'erp2', 'droplogins'; -- 删除erp2连接

三 不存在则创建

IF NOT EXISTS (SELECT 1 FROM sys.servers WHERE name = 'erp2')
BEGIN
    -- 创建链接服务器
    EXEC sp_addlinkedserver 
        @server = 'erp2',
        @srvproduct = '',
        @provider = 'SQLNCLI', 
        @datasrc = '10.0.6.218';
    
    -- 设置登录映射
    EXEC sp_addlinkedsrvlogin
        @rmtsrvname = 'erp2',
        @useself = 'false',
        @locallogin = NULL,
        @rmtuser = 'sa',
        @rmtpassword = 'abc@123';
        PRINT '链接服务器 erp2 创建成功';
END
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容