如何使用JDBC连接到Solaris OS中的Oracle DB?

时间:2012-07-13 08:37:22

标签: java oracle jdbc odbc solaris

我正在尝试编写一个java代码来连接到Oracle9i企业版9.2.0.4.0版。我的机器是Windows XP。 Oracle DB OS是Solaris 8.我目前所做的是:

java.lang.Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

我不确定Oracle DB的ODBC是否使用任何用户名和密码,因为客户端没有提供给我。唯一提供的是Oracle数据库服务器主机名。但我需要做好准备,以防他们拥有用户名和密码。所以假设现在我已经有了用户名,密码和主机名。如何使用这些参数进行连接?我是否需要下载任何jdbc驱动程序以及我在哪里放置它?我完全迷失了,因为我没有任何Solaris 8和Oracle 9来进行测试。因为根据我的发现,连接字符串/ url因版本,操作系统等而异。

2 个答案:

答案 0 :(得分:4)

我强烈建议您直接使用oracle驱动程序,而不是使用ODBC连接到数据库。您可以从Oracle免费下载它 - 它是一个小的jar文件:http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html

然后您可以使用以下代码连接到数据库:

Connection connection = null;
try {
    // Load the JDBC driver
    String driverName = "oracle.jdbc.driver.OracleDriver";
    Class.forName(driverName);

    // Create a connection to the database
    String serverName = "sun.host.name.or.ip.address";
    String portNumber = "1521";
    String sid = "dbname";
    String url = "jdbc:oracle:thin:@" + serverName + ":" + portNumber + ":" + sid;
    String username = "username";
    String password = "password";
    connection = DriverManager.getConnection(url, username, password);
} catch (ClassNotFoundException e) {
    // Could not find the database driver
} catch (SQLException e) {
    // Could not connect to the database
}

答案 1 :(得分:0)

我认为这是一个错字。连接字符串的数据库部分应使用斜杠(/)而不是冒号(:)分隔。相应行的正确代码应如下所示:

...     字符串url =“ jdbc:oracle:thin:@” + serverName +“:” + portNumber +“ /” + sid; ...