我想在Select语句里查找oracle和sql server里相关的两个表,但是用什么方法可以解决呢? (该Select语句要运行在oracle数据库)如果是运行在sql server的Seclect语句可以通过"链接数据库"完成,但是运行在oracle应该怎样?

解决方案 »

  1.   

    忘了还有一点说明是,我用的oracle版本数据库是8.0.5
      

  2.   

    用pb中的管道技术或oracle透明网关技术
      

  3.   

    oracle 8.0.5 版本 也可以用“透明网关“ 吗?
      

  4.   

    调JDBC,通过远程连接的方式,新创建一个连接,当通过JFBC访问时保留当前连接,
    使用SELECT * FROM T_NAME@LINK1的方式
      

  5.   

    1、inittg4msql.ora(tg4msql)
    # This is a sample agent init file that contains the HS parameters that are
    # needed for the Transparent Gateway for SQL Server#
    # HS init parameters
    #
    HS_FDS_CONNECT_INFO="SERVER=IP;DATABASE=pubs"
    HS_FDS_TRACE_LEVEL=ON
    HS_FDS_RECOVERY_ACCOUNT=RECOVER
    HS_FDS_RECOVERY_PWD=RECOVER
    2、listener.ora(Netsql)
    # LISTENER.ORA Network Configuration File: D:\oracle\ora81\NETWORK\ADMIN\listener.ora
    # Generated by Oracle configuration tools.LISTENER =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1521))
        (ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1527))
      )SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = D:\oracle\ora81)
          (PROGRAM = extproc)
        )
        (SID_DESC =
          (GLOBAL_DBNAME = ORA9i)
          (ORACLE_HOME = D:\oracle\ora81)
          (SID_NAME = ORA9i)
        )
        (SID_DESC =
           (GLOBAL_DBNAME = tg4msql) 
           (PROGRAM = tg4msql) 
           (SID_NAME = tg4msql)
           (ORACLE_HOME = D:\oracle\ora81)
        )
      )3、tnsnames.ora(Netsql)# TNSNAMES.ORA Network Configuration File: D:\oracle\ora81\NETWORK\ADMIN\tnsnames.ora
    # Generated by Oracle configuration tools.TG4MSQL =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1527))
        )
        (CONNECT_DATA =
          (SID = tg4msql)
        )
        (HS = OK)
      )
    ORA9I =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = ORA9i)
        )
      )
    9I_logis =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = ORA9i.tclmobile.com)
        )
      )
    INST1_HTTP =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = SHARED)
          (SERVICE_NAME = MODOSE)
          (PRESENTATION = http://HRService)
        )
      )EXTPROC_CONNECTION_DATA =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
        )
        (CONNECT_DATA =
          (SID = PLSExtProc)
          (PRESENTATION = RO)
        )
      )4、sqlnet.ora(Netsql)
    # SQLNET.ORA Network Configuration File: D:\oracle\ora81\network\admin\sqlnet.ora
    # Generated by Oracle configuration tools.# SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES)有域控制时,服务名后面要加上域名称
      

  6.   

    我在8.0.5版本的oracle里找不到这几个文件啊......
      

  7.   

    to: lilylamb(小羊羔) ,可以再具体一些描述你的解决方法吗?
      

  8.   

    有人用这个方法,你看下
    //=======用8.1.7连接SQL SERVER 20001、安装 Microsoft Data Access Components (MDAC)SDK ODBC driver
    2、建立 SQL SERVER 数据源
    test连接上我的test数据库
    3、配置tnsnames.ora. (ORACLE_HOME\NETWORK\ADMIN)
       test=
          (DESCRIPTION=
            (ADDRESS=
               (PROTOCOL=tcp)
               (HOST=<IP地址>)
               (PORT=1521)
            )
            (CONNECT_DATA=
               (SID=test)
            )
            (HS=)
          )
    4、配置listener.ora. (ORACLE_HOME\NETWORK\ADMIN)
       (SID_DESC=
          (SID_NAME=test)
          (ORACLE_HOME=c:\Oracle\iSuites)
          (PROGRAM=hsodbc)
       )
    5、重启ORACLE监听.
       CMD
       LSNRCTL STOP
       LSNRCTL START
       LSNRCTL STATUS
    6、添加网关配置文件. (ORACLE_HOME\HS\ADMIN)
       文件名为:inittest.ora
       文件内容:
       #
       # HS init parameters
       #
       HS_FDS_CONNECT_INFO = test
       HS_FDS_TRACE_LEVEL = 0
       #
       # Environment variables required for the non-Oracle system
       #
       #set <envvar>=<value>
    7、进入ORACLE SQL*PLUS,建立数据库链.
      CREATE DATABASE LINK TOSQL USING 'test';
      

  9.   

    我们要使用的数据库是 8.0.5没有ORACLE_HOME\NETWORK\ADMIN这个目录
      

  10.   


    可通过开发工具来实现...
    如:Vb,delphi...