1

Oracle9i Enterprise Edition リリース 9.2.0.4.0 に接続するための Java コードを作成しようとしています。私のマシンはWindows XPです。Oracle DB OS は Solaris 8 です。私が現在行ったことは次のとおりです。

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

Oracle DB の ODBC がユーザー名とパスワードを使用しているかどうかはわかりません。クライアントから提供されなかったからです。提供される唯一のものは、Oracle DB サーバーのホスト名です。しかし、彼らがユーザー名とパスワードを持っている場合に備えて、私は準備ができている必要があります. したがって、ユーザー名、パスワード、およびホスト名が既にあると仮定します。これらのパラメーターを使用して接続するにはどうすればよいですか? jdbc ドライバーをダウンロードする必要はありますか? また、どこに配置すればよいですか? テストを行うための Solaris 8 と Oracle 9 がないため、完全に途方に暮れています。私が見つけたものから、接続文字列/URLはバージョン、OSなどによって異なるためです.

4

2 に答える 2

4

ODBC を使用してデータベースに接続するのではなく、Oracle ドライバーを直接使用することを強くお勧めします。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
}
于 2012-07-13T08:44:01.783 に答える
0

タイプミスがあったと思います。接続文字列のデータベース部分は、コロン (:) ではなくスラッシュ (/) で区切る必要があります。対応する行の正しいコードは次のようになります。

... String url = "jdbc:oracle:thin:@" + serverName + ":" + portNumber + "/" + sid; ...

于 2018-12-27T11:23:32.950 に答える