zoukankan      html  css  js  c++  java
  • SQLServer中跨服务器跨数据库之间的数据操作

    SQLServer中跨服务器跨数据库之间的数据操作

    首先必须理解一个概念:

    select * from sys.servers         (查看系统表,看原来的服务器名)

    要想跨域就必须在以上信息中可以检索到!

    怎样添加?

    --创建链接服务器 
    exec sp_addlinkedserver   'ITSV '' ''SQLOLEDB ''远程服务器名或ip地址 ' 
    exec sp_addlinkedsrvlogin  'ITSV ''false ',null'用户名 ''密码 ' 
     
    --查询示例 
    select from ITSV.数据库名.dbo.表名 
     
    --导入示例 
    select into 表 from ITSV.数据库名.dbo.表名 
     
    --以后不再使用时删除链接服务器 
    exec sp_dropserver  'ITSV ''droplogins ' 
     
    --连接远程/局域网数据(openrowset/openquery/opendatasource) 
    --1、openrowset 
     
    --查询示例 
    select from openrowset( 'SQLOLEDB ''sql服务器名 ''用户名 ''密码 ',数据库名.dbo.表名) 
     
    --生成本地表 
    select into 表 from openrowset( 'SQLOLEDB ''sql服务器名 ''用户名 ''密码 ',数据库名.dbo.表名) 
     
    --把本地表导入远程表 
    insert openrowset( 'SQLOLEDB ''sql服务器名 ''用户名 ''密码 ',数据库名.dbo.表名) 
    select *from 本地表 
     
    --更新本地表 
    update 
    set b.列A=a.列A 
     from openrowset( 'SQLOLEDB ''sql服务器名 ''用户名 ''密码 ',数据库名.dbo.表名)as inner join 本地表 b 
    on a.column1=b.column1 
     
    --openquery用法需要创建一个连接 
     
    --首先创建一个连接创建链接服务器 
    exec sp_addlinkedserver   'ITSV '' ''SQLOLEDB ''远程服务器名或ip地址 ' 
    --查询 
    select 
    FROM openquery(ITSV,  'SELECT *  FROM 数据库.dbo.表名 '
    --把本地表导入远程表 
    insert openquery(ITSV,  'SELECT *  FROM 数据库.dbo.表名 '
    select from 本地表 
    --更新本地表 
    update 
    set b.列B=a.列B 
    FROM openquery(ITSV,  'SELECT * FROM 数据库.dbo.表名 'as a  
    inner join 本地表 b on a.列A=b.列A 
     
    --3、opendatasource/openrowset 
    SELECT   
    FROM   opendatasource( 'SQLOLEDB ',  'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ' ).test.dbo.roy_ta 
    --把本地表导入远程表 

    测试演示:

    user master;

    exec sp_addlinkedserver   '41f0bcc ', ' ', 'SQLOLEDB ', '192.168.7.21' 
    exec sp_addlinkedsrvlogin  '41f0bcc ', 'false ',null, 'sa ', 'q1w2e3e3r45tr4t5' 

    select * from [41f0bcc].eStoreDB.dbo.V_standard_ORG

  • 相关阅读:
    Yield Usage Understanding
    Deadclock on calling async methond
    How to generate file name according to datetime in bat command
    Run Unit API Testing Which Was Distributed To Multiple Test Agents
    druid的关键参数+数据库连接池运行原理
    修改idea打开新窗口的默认配置
    spring boot -thymeleaf-url
    @pathvariable和@RequestParam的区别
    spring boot -thymeleaf-域对象操作
    spring boot -thymeleaf-遍历list和map
  • 原文地址:https://www.cnblogs.com/lihuiqi/p/11067894.html
Copyright © 2011-2022 走看看