代码
- Java code
import java.sql.Connection;import java.sql.DriverManager;public class conn_demo { //数据库驱动程序名 public static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver"; //数据库地址 public static final String DBURL = "jdbc:oracle:thin:@localhost:1521:192.168.1.102"; //数据库用户名 public static final String DBUSER = "scott"; //数据库密码 public static final String DBPASS = "tiger"; public static void main(String[] args){ try{ Connection conn = null; //加载数据库 Class.forName(DBDRIVER).newInstance(); //连接数据库 conn = DriverManager.getConnection(DBURL, DBUSER, DBPASS); System.out.println(conn); //关闭数据库 conn.close(); }catch(Exception e){ e.printStackTrace(); } }
结果连不上,出现以下错误:
- Java code
java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:254) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:386) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:438) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:164) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:34) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:752) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at conn_orcl.conn_demo.main(conn_demo.java:22)
怎么回事啊?
------解决方案--------------------
public static final String DBURL = "jdbc:oracle:thin:@localhost:1521:192.168.1.102";
这个URL怎么看都不正确吧?最后那个IP地址应该是数据库实例名吧,比如:
jdbc:oracle:thin:@127.0.0.1:1521:orcl
另外你确定数据库启动了么?能否 telnet localhost 1521 ?
------解决方案--------------------
------解决方案--------------------
“java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection”
这个错误确实就是网络问题,而且甚至还没到找不到数据库实例名称的环节。
我建议你还是命令行(CMD)执行:telnet localhost 1521
如果当场就黑屏了,说明端口是OK的;否则可能是监听器没开或其它原因。
------解决方案--------------------
我也出现了类似的错误!!以下纯属个人观点:
1.有人说把localhost换成IP地址就可以了
你可以试下 好像是因为什么文件的问题
2.如果不行看下oracle的监听是不是打开了 有时候打开了刷新下就会关闭你试下!
如果是这种情况的话可能是因为G:\oracle\product\10.2.0\db_1\NETWORK\ADMIN
这个文件夹下 listener 和tnsnames 里面的(HOST = XP-201112051028)(PORT = 1521))写的不 一样造成的改成一样的就行(谨慎修改)
3.如果以上都不行的话就只能重新安装数据库
希望可以帮到你!!
------解决方案--------------------
第一,URL肯定不对,写法参考楼上
对于oraclo这种东西,尽量不要用localhost这种命名,它不是根据系统host转换的,请指定ip地址
第二,用telnet测试连接先