我想连接远程 Oracle DB,但出现异常。请帮帮我。
我能做些什么?
我尝试了这个,但它不起作用:
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection(
"jdbc:oracle:thin:@*****:1521/******", "*********",
"********");
Statement st = con.createStatement();
con.close();
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
出现错误:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
at oracle.sql.converter.CharacterSetMetaData$JdbcCharacterSetMetaData.isFixedWidth(CharacterSetMetaData.java:1292)
at oracle.sql.converter.CharacterSetMetaData.getRatio(CharacterSetMetaData.java:1230)
at oracle.jdbc.driver.DBConversion.init(DBConversion.java:159)
at oracle.jdbc.driver.DBConversion.<init>(DBConversion.java:112)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1075)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:301)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:531)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:221)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:503)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
我测试了你正在使用的代码
DriverManager.getConnection(
"jdbc:oracle:thin:@<host>:<port>:<sid>", "<user>", "<password>");
所以删除/
之间<port>/<sid>
并把:
之间<port>:<sid>
您更新后的代码将是
Connection con = DriverManager.getConnection(
"jdbc:oracle:thin:@*****:1521:******", "*********",
"********");
有关更多详细信息,您可以参考此链接http://docs.oracle.com/cd/E11882_01/appdev.112/e12137/getconn.htm#TDPJD136 http://docs.oracle.com/cd/E11882_01/appdev.112/e12137/getconn.htm#TDPJD136
我希望,它会对你有所帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)