删除行后尝试捕获事件 sql
Gettint try and catch events after deleting row sql
大家好,每当我尝试使用单选按钮删除一行时,我都会收到 try 和 catch 消息,当它应该只是其中之一时,我有这段代码
这是我的调用按钮方法
if(request.getParameter("btnEliminar") != null)
{
String value;
int codParse;
OC_DAO objDAO = new OC_DAO();
valor = request.getParameter("rbSel");
codParse = Integer.parseInt(valor);
objDAO.DeleteRow(codParse);
}
这是我的 java 代码
public void DeleteRow(int codDet)
{
try
{
cn = Conexion.getConexion();
pt = cn.prepareStatement("DELETE "
+ "FROM detalleProd "
+ "WHERE codDet = ?");
pt.setInt(1, codDet);
pt.executeUpdate();
System.out.println("ROW DELETED ON CODDET: " + codDet);
rs.close();
pt.close();
cn.close();
}
catch(Exception exc)
{
System.out.println("Error while deleting");
System.out.println(exc.toString());
}
}
这是我的日志
Información: ROW DELETED ON CODDET: 48
Información: Error while deleting
Información: java.lang.NullPointerException
原因是rs.close();
,你没有设置rs
的值,为空,无法关闭,只需要去掉这行代码即可。
你的代码看起来很奇怪,我没有看到你在哪里声明rs
,它会在你的IDE中编译错误。
大家好,每当我尝试使用单选按钮删除一行时,我都会收到 try 和 catch 消息,当它应该只是其中之一时,我有这段代码
这是我的调用按钮方法
if(request.getParameter("btnEliminar") != null)
{
String value;
int codParse;
OC_DAO objDAO = new OC_DAO();
valor = request.getParameter("rbSel");
codParse = Integer.parseInt(valor);
objDAO.DeleteRow(codParse);
}
这是我的 java 代码
public void DeleteRow(int codDet)
{
try
{
cn = Conexion.getConexion();
pt = cn.prepareStatement("DELETE "
+ "FROM detalleProd "
+ "WHERE codDet = ?");
pt.setInt(1, codDet);
pt.executeUpdate();
System.out.println("ROW DELETED ON CODDET: " + codDet);
rs.close();
pt.close();
cn.close();
}
catch(Exception exc)
{
System.out.println("Error while deleting");
System.out.println(exc.toString());
}
}
这是我的日志
Información: ROW DELETED ON CODDET: 48
Información: Error while deleting
Información: java.lang.NullPointerException
原因是rs.close();
,你没有设置rs
的值,为空,无法关闭,只需要去掉这行代码即可。
你的代码看起来很奇怪,我没有看到你在哪里声明rs
,它会在你的IDE中编译错误。