oracle 10g我在本机上装了一个服务端数据库,然后在net manger里面测试是连接成功的然后在客户端net manager里面测试也是连接成功sqlplus里面和plsql里面也可以连进去但就是在ODBC里面连接不成功报错,ORA-12154: TNS: 无法解析指定的连接标识符我全部是本地连接本地,没有远程。监听都开着呢,客户端和服务端都开着呢请问是什么原因

解决方案 »

  1.   

    管理工具数据源里面的系统DSN没什么问题啊
      

  2.   


    C:\Documents and Settings\GL>tnsping oaTNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 26-7月 -
    2011 08:49:36Copyright (c) 1997, 2005, Oracle.  All rights reserved.已使用的参数文件:
    已使用 TNSNAMES 适配器来解析别名
    Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
    (HOST = 168.1.17.173)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))
    OK (10 毫秒)C:\Documents and Settings\GL>tnsping oa-cTNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 26-7月 -
    2011 08:50:40Copyright (c) 1997, 2005, Oracle.  All rights reserved.已使用的参数文件:TNS-03505: 无法解析名称
    +++++++++++++++++++++++++本地数据库oa
    客户端名称oa-c
      

  3.   

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="oracle.jdbc.OracleDriver">
    </property>
    <property name="url" value="jdbc:oracle:thin:@localhost:1521:oracl">
    </property>
    <property name="username" value="scott"></property>
    <property name="password" value="tiger"></property>
    </bean>
     看看你的Jar包加了没有这是一个在Spring里的配置,你是在什么环境下配置的?
      

  4.   

    我现在是用最老的那个东西ASP+ODBC+ORACLE,部署一个网站,就ODBC这块有问题
      

  5.   

    建立ODBC的时候那个,TNS service name应该是数据库实例名。我也出现这样过,结果在下拉菜单直接选择实例名,就可以了啦;
      

  6.   

    ODBC名字是你配置的数据源的名字,和你的TNSNAMES.ORA没有任何关系。配置数据源的时候才需要找你的TNSNAME,和数据库的名字也没有任何关系。
      

  7.   

    你的问题到底是什么原因我不清楚,我说一下我遇到的情况,希望对你有点用:
    我配置ODBC数据源,添加时总是出错,
    我也可以用PL/SQL,SQLPLUS,这些都可连数据库,
    但就是配置ODBC数据源时间出问题:
    后来发现是因为我装的是简化版的ORACLE客户端,
    换一个版本的客户端就可以正常配置ODBC数据源了。