• SQL中两台服务器间使用连接服务器(ZT)


    SQL中两台服务器间使用连接服务器

    exec OPENDATASOURCE(
      'SQLOLEDB',
      'Data Source=远程ip;User ID=sa;Password=密码'
      ).库名.dbo.存储过程名
      
      2:将资料插入另一服务器上的表中
      
      select * into 本地库名..表名 from OPENDATASOURCE(
      'SQLOLEDB',
      'Data Source=远程ip;User ID=sa;Password=密码'
      ).库名.dbo.表名
      
      insert 本地库名..表名 select * from OPENDATASOURCE(
      'SQLOLEDB',
      'Data Source=远程ip;User ID=sa;Password=密码'
      ).库名.dbo.表名
      
      或使用联结服务器:
      EXEC sp_addlinkedserver '别名','','MSDASQL',NULL,NULL,'DRIVER={SQL Server};SERVER=远程名;UID=用户;PWD=密码;'
      
      exec sp_addlinkedsrvlogin @rmtsrvname='别名',@useself='false',@locallogin='sa',@rmtuser='sa',@rmtpassword='密码'
      GO
      
      (请注意上面的两步要同时运行)
      
      然后你就可以如下:
      select * from 别名.库名.dbo.表名
      insert 库名.dbo.表名 select * from 别名.库名.dbo.表名
      select * into 库名.dbo.新表名 from 别名.库名.dbo.表名
      go
      
      
      3:如果在事务里使用连接服务器要加上分布式事务:
      两边启动dtc
      
      set XACT_ABORT on
      set ANSI_NULL_DFLT_ON on
      set ANSI_WARNINGS on
      
      BEGIN DISTRIBUTED TRANSACTION
      select * from OPENDATASOURCE('MSDASQL','DRIVER={SQL Server};SERVER=ip;UID=sa;PWD=密码;').pubs.dbo.jobs
      commit tran

  • 相关阅读:
    cocos2dx环境搭建(android平台)
    转:Android开发实践:Java层与Jni层的数组传递
    转:Linux串口编程入门详解
    Linux串口通信之termios结构体说明
    SQLite3 C语言API入门
    android常用工具记录
    Java中byte与16进制字符串的互相转换
    JNI原理及实现
    Java调用动态库方法说明
    JAVA中使用动态链接库须知
  • 原文地址:https://www.cnblogs.com/liangqihui/p/917157.html
Copyright © 2020-2023  润新知