Controlador JDBC Tipo 2
Soy un traductor de español que traduce documentos de TI. Traduzca lo siguiente al español. No traduzca el código ni la salida en markdown.
Soy nuevo en la programación JDBC java. Al tratar de conectarme a la base de datos de Oracle (10.2) usando el controlador OCI, obtengo el siguiente error:
C: \ JavaPractise \ JDBC> java Type2DriverDemo_1 Hola Excepción en el subproceso “principal” java.sql.SQLException: ORA-12154: TNS: no se pudo resolver el identificador de conexión especificado
en oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
en oracle.jdbc.driver.T2CConnection.checkError(T2CConnection.java:672)
en oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:346)
en oracle.jdbc.driver.PhysicalConnection. & lt; init & gt; (PhysicalConnection.java: 414)
en oracle.jdbc.driver.T2CConnection. & lt; init & gt; (T2CConnection.java:132)
en oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:78)
en oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
en java.sql.DriverManager.getConnection (Fuente desconocida)
en java.sql.DriverManager.getConnection (Fuente desconocida)
en Type2_Driver_Demo_1.main(Type2_Driver_Demo_1.java:9)
He establecido CLASSPATH en ojdbc14.jar. También se establecen oraclehome y TNSADMIN para señalar al archivo tnsnames.ora. A continuación, se muestra la URL de JDBC:
DriverManager.getConnection (“jdbc: oracle: oci: @XE,” scott “,” tiger “);
¿Puede ayudar con este error?
Solo para su información:
El controlador de tipo 4 funciona bien.
Gracias,
Tejas S Kulkarni
davy.ai
Solución al Error de Conexión de Oracle JDBC
El mensaje de error “ORA-12154: TNS: no se ha podido resolver el identificador de conexión especificado” generalmente implica que el listener de Oracle no pudo encontrar el identificador de base de datos especificado en la URL de JDBC.
Deberías intentar lo siguiente:
Revisa si el identificador de base de datos (también conocido como nombre de servicio o SID) está correctamente especificado en la URL de JDBC. En este caso, la URL de JDBC parece usar el símbolo “@” en lugar de “:” para separar el identificador de base de datos del nombre de host o dirección IP. Puedes intentar cambiar la URL de JDBC a:
DriverManager.getConnection(“jdbc:oracle:oci:@//localhost:1521/XE”, “scott”, “tiger”);
donde “localhost” debe ser reemplazado por el nombre de host o la dirección IP del servidor de Oracle donde está instalada la base de datos, y “1521” por el número de puerto del listener.
Si puedes conectarte a la base de datos desde SQL*Plus y la URL de JDBC es correcta, entonces el problema puede estar relacionado con la configuración del cliente de Oracle. Asegúrate de que las variables de entorno Oracle Home y TNS_ADMIN estén correctamente configuradas, y que el archivo tnsnames.ora contenga la información correcta sobre la base de datos.
Por cierto, si el controlador de Tipo 4 está funcionando correctamente, entonces puede que desees utilizarlo en lugar del controlador OCI, ya que es más ligero y no requiere una instalación separada del cliente de Oracle.
Espero que esto te ayude. ¡Buena suerte con tu programación de JDBC!