如何操做不在同一个数据库中的数据操作:

一。对于SQL server来讲:
  1.采用创建链接服务器的方式: 
   (1).创建链接服务器
       exec sp_addlinkedserver   '要创建的链接服务器的本地名称', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 ' 
         sp_addlinkedserver :创建一个链接服务器(相当于oracle中的本地注册)  
       exec sp_addlinkedsrvlogin  '创建的链接服务器的本地名称 ', 'false ',null, '用户名 ', '密码' 
          sp_addlinkedsrvlogin :使用已创建的链接服务器进行登录。
   (2).查询示例:
       select * from [已创建的链接服务器名称].数据库名.dbo.表名
       
       select * from openquery(已创建的链接服务器名称,'select * from 表名')

(3)。当数据库用完之后 关闭链接
      
        --以后不再使用时删除链接服务器 
        exec sp_dropserver  '创建的链接服务器的本地名称', 'droplogins '
 
      sp_dropserver '将被删除的服务器名称','droplogins| null' 如果指定了droplogins 那么相关的远程及链接服务器登录也被删除 
  
   2.采用odbc的方式来进行链接(openrowset)
     (1)使用openrowset进行链接
     例如: 
       select * from openrowset('SQLOLEDB','SQL服务器名';'用户名';'密码',数据库目录.dbo.表名称)

select * from openrowset('MSDASQL','DRIVER={SQL Server};Server=远程服务器名称/IP地址;UID=用户名;PWD=密码',数据库目录.dbo.表名称);
        
 --链接Access数据库
   下面的示例从本地 SQL Server Northwind 数据库的 customers 表中,以及存储在相同计算机上 Access Northwind 数据库的 orders 表中选择所有数据
           说明  下面的示例假定已经安装了 Access。
    USE pubs
     GO
   SELECT c.*, o.*  
      FROM Northwind.dbo.Customers AS c INNER JOIN  OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'c:\MSOffice\Access\Samples\northwind.mdb';'admin';'mypwd', Orders) AS o
            ON c.CustomerID = o.CustomerID 
          GO

(2) 采用opendataResource来访问远程数据库
        
   SELECT   *  FROM   opendatasource( 'SQLOLEDB ',  'Data Source=远程服务器名称/IP地址;User ID=用户名;Password=密码 ' ).数据库目录.dbo.表名称

二.oracle数据库中操作两个不同数据库中的两张表
   在这里oracle数据库服务器使用的dblink的方式, 其实dblink和数据库中的view差不多,建dblink的时候需要知道待读取数据库的ip地址,ssid以及数据库用户名和密码。
   1、已经配置本地服务
       其语法为:
          CREATE DATABASE LINK 数据库链接名 CONNECT TO 用户名 IDENTIFIED BY 密码 USING ‘本地配置的数据的实例名’;
 示例:
         create public database link test connect to userInformation  identified by ***** using 'orcl'
   2、未配置本地服务

create database link test 
   connect to userInformation identified by *****  
     using '(DESCRIPTION = 
   (ADDRESS_LIST = 
   (ADDRESS = (PROTOCOL = TCP)(HOST = 10.142.202.12)(PORT = 1521)) 
   ) 
   (CONNECT_DATA = 
   (SERVICE_NAME = fjept) 
   ) 
   )';

示例:
    
     select * from 表名@数据库链接名

其实不难看出 第一种和第二种数据库链接没有多大的区别  第一种链接其实把配置信息放到了TNSNAMES.ORA中了

转:不在同一个服务器上的数据库之间的数据操作(oracle/sql server的对比)的更多相关文章

  1. SQL不同服务器数据库之间的数据操作整理(完整版)

    ---------------------------------------------------------------------------------- -- Author : htl25 ...

  2. SQLServer服务器数据库之间的数据操作(完整版)

    分类: 数据库开发技术 ---------------------------------------------------------------------------------- -- Au ...

  3. 转载-SQL不同服务器数据库之间的数据操作整理(完整版) .

    ---------------------------------------------------------------------------------- -- Author : htl25 ...

  4. 不同服务器数据库之间的数据操作 sp_addlinkedserver

    --创建链接服务器  exec sp_addlinkedserver   'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 '  exec sp_addlinkedsrv ...

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

    首先必须理解一个概念: select * from sys.servers         (查看系统表,看原来的服务器名) 要想跨域就必须在以上信息中可以检索到! 怎样添加? --创建链接服务器  ...

  6. SQL Server 之 在数据库之间进行数据导入导出

    1.同一服务器上数据库之间进行数据导入导出 (1).使用 SELECT INTO 导出数据 在SQL Server中使用最广泛的就是通过SELECT INTO语句导出数据,SELECT INTO语句同 ...

  7. Navicat连接腾讯云服务器上的数据库

    下面介绍Navicat连接腾讯云服务器上的数据库的两种方法: 方法一:[不需要修改相关远程客户端连接权限] 点击安装好的桌面navicat图标,进入后如下图: 连接方法:ssh中输入自己服务器的外网i ...

  8. MySQL复制同一个服务器的表结构和表数据

    例如,现在服务器上有数据库 dbx 和 dby,dbx中有很多表,要把dbx中的表全部复制到dby,如下操作: 首先: use dby; [复制表结构] CREATE TABLE user LIKE ...

  9. 介绍几种大型的Oracle/SQL Server数据库免费版

    我们知道,Oracle和SQL Server等大型数据库也都存在一些免费的版本,这些免费的版本已经能够满足许多中小项目的需求.对于在校大学生来说,从学习的目标上来讲,安装免费版的大型数据库也就足够用了 ...

随机推荐

  1. CDOJ 1288 旅游的Final柱 构造题

    旅游的Final柱 题目连接: http://acm.uestc.edu.cn/#/problem/show/1288 Description 柱神要去打Final啦~(≧▽≦)/~啦啦啦 柱神来到了 ...

  2. 2015 UESTC 数据结构专题B题 秋实大哥与花 线段树 区间加,区间查询和

    B - 秋实大哥与花 Time Limit: 1 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/59 De ...

  3. PAT甲级1010. Radix

    PAT甲级1010. Radix (25) 题意: 给定一对正整数,例如6和110,这个等式6 = 110可以是真的吗?答案是"是",如果6是十进制数,110是二进制数. 现在对于 ...

  4. 【原】配置Log4j,使得MyBatis打印出SQL语句

    [环境参数] JDK:jdk1.8.0_25 IDE:Eclipse Luna Servie Release 1 框架:Spring 4.1.5 + SpringMVC 4.1.5 + MyBatis ...

  5. JAVA多线程读写文件范例

    在写之前先声明,本文是基于之前在博客园网站上检索到的一份JAVA多线程读写文件的示例,我在写自己的程序时是在那位作者写的基础上做了改良,但已不记得原文的地址.如果有知情者,烦请帖出地址,我在此文上加入 ...

  6. Linux/UNIX线程(2)

    线程(2) 线程同步 当多个控制线程共享同样内存时,须要确保每一个线程看到一致的数据视图.假设每一个线程使用的变量都是其它线程不会读取或改动的,那么就不在一致性问题. 当两个或多个线程试图在同一时间改 ...

  7. 【javaw.exe 两个】启动了两个javaw.exe 相关

    大家开发 肯定见过 两条并存的现象吧! 关闭方式1: 在任务管理器中,挑选 内存占用较小的 那个  关闭即可!! 关闭方式2: 1.查找对应的端口占用的进程:netstat  -aon|findstr ...

  8. JVM 图形化监控工具

    1.jvmstat        jvmstat是图形版的jstat,由Java 官方提供,目前最新版本为3.0. 下载地址:http://www.oracle.com/technetwork/jav ...

  9. koa2搭建服务器+使用mongoose链接mangodb

    使用node搭建服务器,用到了现在比较流行的框架koa. 1.初始化package.json npm init -y 2.安装koa2 npm i koa --save 3.搭建服务器 const K ...

  10. 类似于GROUP BY SUM() 用于字符串连接的语句

    CREATE TABLE T ( [f1] VarCHAR(100), [f2] VarCHAR(100))goINSERT INTO T   VALUES ('a','abc')INSERT INT ...