【发布时间】:2015-06-20 17:23:43
【问题描述】:
我正在遵循 JDBC 开发人员指南并尝试使用一个简短的 java 程序测试 JDBC 瘦驱动程序连接。
import java.sql.*;
import oracle.jdbc.*;
import oracle.jdbc.pool.OracleDataSource;
class JDBCVersion
{
public static void main (String args[]) throws SQLException
{
OracleDataSource ods = new OracleDataSource();
ods.setURL("jdbc:oracle:thin:hr/hr@localhost:1522:orcl");
Connection conn = ods.getConnection();
// Create Oracle DatabaseMetaData object
DatabaseMetaData meta = conn.getMetaData();
// gets driver info:
System.out.println("JDBC driver version is " + meta.getDriverVersion());
}
} //<host>:<port>:<service>
我已经尝试了所有可能的<host>:<port>:<service> 组合,但仍然得到java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
我已经使用教程中包含的另一个程序成功地测试了 OCI 驱动程序....但是无法让这个程序工作。我的应用程序将使用瘦驱动程序连接到数据库,所以我的挫败感是......爬。
感谢任何帮助。
【问题讨论】:
-
即使您提供了连接的用户名和密码,是否也会出现同样的异常?
-
是的,同样的错误。它需要用户名和密码吗?我读过几个相互矛盾的
-
连接成功,是的。经过重新思考,我猜这个例外会有不同的措辞。你检查过主机、端口和SID吗?您将哪个连接 URL 用于 OCI?
-
OCI 使用 TNS,不需要其他信息。我会用 un/pw 再试一次并报告。
-
您是否将主机、端口和 SID 与 TNS 名称中的值进行了比较?
标签: java sql jdbc oracle12c ojdbc