oracle 11g release2版本jdbc,java基于JDBC连接Oracle 11g Release2实例分析

本文实例讲述了java基于JDBC连接Oracle 11g Release2的方法。分享给大家供大家参考。具体如下:

Oracle 11g Release 2 的 JDBC 连接似乎有所不同 ,如果你收到下面的异常:

Listener refused the connection with the following error:ORA-12505, TNS:listener does not currently know of SID given in connect descriptor.

那么你必须用下面的连接方式:

/*******************************************************

* Created on Nov, 2011 Copyright(c) http://vigilance.co.in All Rights Reserved.

********************************************************/

package com.vigilance.java.sample;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

/**

* @author http://vigilance.co.in

*/

public class ConnectJDBCOracle11g {

/**

* This class demonstrates the code for connecting Oracle 11g database using JDBC.

* @param args

*/

public static void main(String[] args) {

String JDBC_DRIVER = "oracle.jdbc.driver.OracleDriver";

String JDBC_STRING = "jdbc:odbc:thin:@HOSTNAME:PORTNUMBER/SID";

// in case of 11g use '/' instead of :

String USER_NAME = "USER_NAME";

String PASSWD = "PASSWORD";

Connection conn = null;

ResultSet rs = null;

Statement stmt = null;

try{

Class.forName(JDBC_DRIVER);

conn = DriverManager.getConnection(JDBC_STRING, USER_NAME, PASSWD);

stmt = conn.createStatement();

String query = "SELECT * FROM TABLE TBL";

rs = stmt.executeQuery(query);

}catch(SQLException sqlEx){

sqlEx.printStackTrace();

} catch (ClassNotFoundException e) {

e.printStackTrace();

} finally{

try {

if(rs!=null) rs.close();

if(stmt !=null) stmt.close();

if(conn!=null) conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}

希望本文所述对大家的java程序设计有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle官方11g 最新版jdbc驱动。 新特性:   1、支持JDK6,支持JDBC 4.0,新的java.sql.SQLXML类型没有被支持,是使用ojdbc6.jar来支持。J2SE 5.0 和 JDBC 3.0 全面支持使用ojdbc5.jar。   2.不再支持oracle.jdbc.driver。从9.0.1开始的每个release都推荐使用oracle.jdbc。这一天终于到来,在11g中,引用oracle.jdbc.driver不再通过编译。   3.j2se 1.2,1.3,1.4不再支持。11R1不再包括这些版本的jar和zip,如果仍然使用这些版本,可以继续使用10gR2的jdbc。   4.11gR1 Thin driver支持AES加密算法,SHA1 hash算法,RADIUS, KERBEROS,SSL认证机制.   5.支持ANYDATE和ANYTYPE类型。这两种类型自9i引入,11R1前,程序员只能通过PL/SQL操作。   6.高级队列支持。11R1提供了访问AQ的高性能接口。   7.支持数据库变更通知。   8.Thin和OCI的数据库启动和关闭。11R1提供了这样的方法来启动和关闭数据库。   9.新的工厂方法。Oracle JDBC 11R1 oracle.jdbc.OracleConnection提供了创建Oracle对象的工厂方法。   包括ARRAY, BFILE, DATE, INTERVALDS, NUMBER, STRUCT, TIME,TIMESTAMP,TIMESTAMP等。   ojdbc5.jar: 适用于jdk5   ojdbc6.jar: 适用于jdk6   ***_g.jar 只是用javac -g编译,生成所有调试信息,其它全一样   ---------------------------------------------------   总体讲新版本JDBC驱动 性能强、很多bug被发现并已解决。   我遇到的,之前使用ojdbc14.jar(不记得哪个版本了)批量插入10万条,实际只插入了3万多条,其它的丢失了,换ojdbc6.jar后,一次commit批量插入100万条也OK了。   尽量使用和数据库版本一致的驱动,有bug时,换高版本JDBC驱动试试 。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值