java - jdbc : front end java, 后端 Oracle 10g Express 版

标签 java oracle10g

我想寻求帮助。我无法将我的 java 连接到 Oracle 10g Express 版本。我已经尝试解决这个问题大约三天了。我已经将 javac 和 java 降级到 1.8,因为它是 youtube 上关于如何解决此问题的唯一可用教程,但它仍然不起作用。我的程序确实可以编译,当我尝试运行它时,我的终端显示“java.sql.SQLException:ORA-00911:无效字符”。我使用的是 java.swing 而不是 javafx。请帮助我,我是新手,谢谢!

import java.sql.*;  
class OracleCon{  
public static void main(String args[]){  
try{  

Class.forName("oracle.jdbc.driver.OracleDriver");  


Connection con=DriverManager.getConnection( "jdbc:oracle:thin:@localhost:1521:xe","customer","customer");  


Statement stmt=con.createStatement();  


ResultSet rs=stmt.executeQuery("select * from customer;");  
while(rs.next())  
System.out.println(rs.getInt(1)+"  "+rs.getString(2)+"  "+rs.getString(3));  


con.close();  

}catch(Exception e){ System.out.println(e);}  

}  
}  

最佳答案

你能尝试一下吗

ResultSet rs=stmt.executeQuery("select * from customer");  
while(rs.next())  
System.out.println(rs.getInt(1)+"  "+rs.getString("2")+"  ");  
//1  I removed from your code `rs.getString(3)` and `rs.getString(2)`
//2  You can add string as rs.getString("3"), `rs.getString("2")` like this 
//3 my suggestion is you first remove rs.getString(3) , rs.getString("2") and run 

此类异常包含特殊字符时会抛出

Error java.sql.SQLException: ORA-00911: invalid character

这种错误会发生 - 最常见的原因是误解列索引

Java.sql.SQLException: Invalid column index

关于java - jdbc : front end java, 后端 Oracle 10g Express 版,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58926973/

相关文章:

java - Apache HTTPClient 建立的连接不超过 2 个

java - 围绕 jdbc 的方解石模式以及每个用户的过滤表

sql - SELECT UDAF(AGGR()) HAVING 中的奇怪行为

oracle - 以无法破坏的方式限制表中允许的记录数

Oracle 序列值未排序

java - 如何在ubuntu上安装Oracle Thin jdbc驱动程序

sql - rowid 插入 Oracle 后可以立即失效吗?

java - SSLEngine 关闭

java - 如何在 Android map 中使用 2 点确定 vector ?

java - 从字符串 s 中打印给定大小 k 的字典顺序最小和最大子字符串