ConstraintViolationException
异常信息:异常:org.hibernate.exception.ConstraintViolationException
异常的名字已经很明显了,其实就是数据库中有约束,表A与表B,表C均有关联,要删除表A的数据,先要删除表A和表B 以及表A和表C之间关联。否则一上来就删表A的数据就会报错。
为什么会抛出这个异常:java.sql.SQLException: After end of result set
错误的片段代码如下:
try {
s=conn.createStatement();
rs=s.executeQuery(“select * from events where event_id=”+id);
while(rs.next()) {
System.out.println(“ok”);
}
}catch(SQLException e1) {
e1.printStackTrace();
}
String result=rs.getString(2);
System.out.println(result);
return result;
————–在while的条件里已经用了resulset,然后它就关闭了。但是在后面又调用了resultset,因为它已经关闭,所以就会抛出异常。
正确片段代码如下:
try {
s=conn.createStatement();
rs=s.executeQuery(“select * from events where event_id=”+id);
while(rs.next()) {
result=rs.getString(2);
}
}catch(SQLException e1) {
e1.printStackTrace();
}
return result;


