
第一个:
java.sql.SQLException : ORA-00001: 违反唯一约束条件 (SHIEP.U_TEACHER)ORA-06512: 在 "SHIEP.INSERTTEACOU", line 5ORA-06512: 在 line 1
at oracle.jdbc.driver.DatabaseError.throwSqlException( DatabaseError.java:111)
之后的报错信息 略。。。。
是关于违反Oracle一个唯一性约束U_TEACHER
第二个:
java.sql.SQLException : ORA-00001: 违反唯一约束条件 (SHIEP.U_ROOM)ORA-06512: 在 "SHIEP.INSERTTEACOU", line 5ORA-06512: 在 line 1
at oracle.jdbc.driver.DatabaseError.throwSqlException( DatabaseError.java:111)
之后的报错信息略。。。。
是关于违反Oracle另一个唯一性约束U_ROOM
我是Java新手。我想问下如何在Java代码中判断操作违反了哪个约束??
在异常处理这一块我要进行什么样的判断??
try{
//操作数据库代码
}catch(Exception e){
if(e.getMessage().indexOf("U_TEACHER"岩颂嫌)>0){
System.out.println("是关于违反Oracle一个唯一性约束U_TEACHER");
}else if(e.getMessage().indexOf("U_ROOM")>樱基0){
System.out.println("是关于违反Oracle一个唯一粗手性约束U_ROOM");
}
}
首先是你想怎么处理?迹吵
数据库报错了,java代码怎么处理你这个insert都不能继续下去了
所以你要么直接将错误备州纳抛到页面方法后面加throws Exception
要仿没么自行处理
try {
//你的调用insert的方法
} catch (SQLException e) {
//这里自定义处理方法
}
做好事物管理,违反了就全部回镇昌退。最好在插入前粗旅仔自己判断下有没有重复主键,有岩汪就不去连接数据库插入数据了,直接在那将异常抛到前端
在java中判断数据库中操作违反了哪个约束耐雹坦,可以通过try-catch块来捕捉,数据库中违反约束的情况,在java中是通过异常的形式来显示,具体违反的昌桐操作需要查肆枝看sql语句