zoukankan      html  css  js  c++  java
  • sqlserver利用链接服务器查询或同步本地数据库和远程数据库

    这个实际上是SQLserver的分布式查询:如果一个项目需要二至多台服务器,而我们又必须从几台服务器中将数据取出来,这就必须用分布式查询!
    在这里有两个概念:本地数据源、远程数据源!
    本地数据源指的是单个服务器上的数据而远程数据源指的是另一个SQL实例上的数据。
    如何跨服务器取数呢?

    创建链接服务器

    如果经常访问或数据量大,建议用链接服务器--
    exec sp_addlinkedserver ''srv_lnk'','''',''SQLOLEDB'',''远程服务器名或ip地址''
    exec sp_addlinkedsrvlogin ''srv_lnk'',''false'',null,''用户名'',''密码''go

    查询示例

    select * from srv_lnk.数据库名.dbo.表名

    导入示例

    select * into 表 from srv_lnk.数据库名.dbo.表名go--以后不再使用时删除链接服务器
    exec sp_dropserver ''srv_lnk'',''droplogins''

    临时访问

    如果只是临时访问,可以直接用openrowset

    查询示例

    select * from openrowset(''SQLOLEDB'',''sql服务器名'';''用户名'';''密码'',数据库名.dbo.表名)

    导入示例

    select * into 表 from openrowset(''SQLOLEDB'',''sql服务器名'';''用户名'';''密码'',数据库名.dbo.表名)

    如何在企业管理器中设置呢?

    SQL实例--->安全性--->链接服务器--->右键新建链接服务器常规中输入链接服务器的名字,选其它数据源,选SQLOLEDB,数据源写上,一般写IP地址再选安全性-----》选本地登陆----》模拟打勾用此安全上下文进行,输入用户与密码。
    常见问题:1.在建立完链接服务器后,我们进行查询操作例:我们已对DFLD的服务器做了链接,紧接着我们想访问它中PUBS数据库中的Authors表Select * From DFLD.PUBS..Authors经常会出二类问题
    1.提示 异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项。这将确保一致的查询语义。请启用这 些选项,然后重新发出查询。 这种提示是因为没有将ANSI_NULLS与ANSI_WARNINGS打开 SET ANSI_NULLS ON SET ANSI_WARNINGS ON Select * From DFLD.PUBS..Authors--这样就可以了!
    2.提示 某机器MSDTC服务不可用 这种提示很简单,只需要将MSDTC服务打开就是了!注:需要双方均打开MSDTC服务,默认不打开

  • 相关阅读:
    <学习笔记>Algorithm Library Design 算法库设计in c++ III(设计策略)
    Openmesh函数库设计及与CGAL的对比
    Android全屏设置的两种方式
    notifyDataSetInvalidated()和notifyDataSetChanged()有什么区别?
    android计量单位dip、px、sp之间区别与联系
    c# using作用
    C# sealed 关键字
    Codeforces Round #188 (Div. 2) A. Even Odds
    Github 使用中出现的问题解决方法
    ios开发:如何加载大量图片 相册示例
  • 原文地址:https://www.cnblogs.com/shamo89/p/9546460.html
Copyright © 2011-2022 走看看