Oracle 11g Release 2 的 JDBC 连接

本文介绍如何使用JDBC连接Oracle11g数据库,并提供了一个示例程序,解决连接过程中可能出现的ORA-12505错误。文章详细展示了连接字符串的正确配置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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();
		}
	}
}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值