首先要知道对方数据库实例名,在者本地tnsname.ora中应有到对方去的连接
比如本地tnsname.ora中有到 test的连接
test.word=(
  ******
)
用以下方法
EXEC SQL CONNECT :username IDENTIFIED BY :password USING :db_name ;
这里 db_name 可以是 test

解决方案 »

  1.   

    本地tnsname.ora?什么意思?
    ORACLE 可能在soloris、linux、nt、上。而程序也可能在soloris、linux、nt的某种平台上。
    pro*c程序希望能够脱离ORACLE 环境。
      

  2.   

    就我的经历,pro*c程序至少要在安装有ORACLE的客户端环境工作。至于你知道某个IP上有ORACLE然后就写个程序从PC去连接............很是佩服你
      

  3.   

    我呀,预编译后把头文件放到前面就行啦还有一段共用的代码要加进来
    连接要用net config建立一个本地的服务名
      

  4.   

    connect string不是一定要事先设置好才能使用的,只要将那段东西都打在connect string的位置,一样可以联。这样就可以动态的联了:)
      

  5.   

    我把问题说得简单一些:
    computer1: IP 192.168.0.1 saloris+oracle817,数据库实例:ordb001.
    computer2: IP 192.168.0.2 linux,希望在此计算机上的pro*c程序能建立与computer1的ordb001的连接,computer2上没有oracle 环境。当然可以存在computer3,linux+oracle做开发pro*c用,将开发的程序再移到computer2上。
    在这种情况下,这个connect语句该怎么写?
      

  6.   

    EXEC SQL CONNECT scott/tiger@dblink先配好net8的dblink名
      

  7.   

    步骤:先配置net8的service name
    然后使用配置好的servicename以下面的方式连接
    EXEC SQL CONNECT usr/passwd@servicename
      

  8.   

    servicename
    有怎么配呢?麻烦老兄讲讲!