Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过java代码获取MySQL delete命令中的错误_Java_Mysql_Sql_Jakarta Ee_Jdbc - Fatal编程技术网

通过java代码获取MySQL delete命令中的错误

通过java代码获取MySQL delete命令中的错误,java,mysql,sql,jakarta-ee,jdbc,Java,Mysql,Sql,Jakarta Ee,Jdbc,我使用jdbc从表中删除了记录,但除此之外,我得到了一个错误,如下所示: java.sql.SQLException: Before start of result set at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987) at com.mysql.jdbc.SQ

我使用jdbc从表中删除了记录,但除此之外,我得到了一个错误,如下所示:

java.sql.SQLException: Before start of result set
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
    at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:841)
    at com.mysql.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:2674)
    at com.mysql.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:2815)
    at org.apache.commons.dbcp.DelegatingResultSet.getInt(DelegatingResultSet.java:236)
    at net.ordernet.vd.lookupTable.UpdateLookupTable.deleteLookupTableRecords(UpdateLookupTable.java:118)
    at net.ordernet.vd.soap.UpdateLookupTableTool.deleteLookupTableRecords(UpdateLookupTableTool.java:50)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
我的代码如下: 1) 使用两个字符串指定查询 2) 连接对象用于准备语句 3) 已检查“int”变量中更新查询的结果 4) 我没有使用结果集,但是得到了结果集异常

try 
{
  String queryDeleteLookupTableRecords = "delete from LookupTableRecords where tableId = ?";
  String queryDeleteLookupTableRows = "delete from LookupTableRows where tableId = ?";

  PreparedStatement psDeleteLookupTableRecords = oConnection.prepareStatement(queryDeleteLookupTableRecords);
  PreparedStatement psDeleteLookupTableRows = oConnection.prepareStatement(queryDeleteLookupTableRows);
  psDeleteLookupTableRecords.setInt(1, oLookupTable.getID());
  psDeleteLookupTableRows.setInt(1, oLookupTable.getID());
  int result = psDeleteLookupTableRecords.executeUpdate();
  int result2 = psDeleteLookupTableRows.executeUpdate();
  if(result > 0 && result2 > 0)
  {
     iReturnValue = 1;
  }
  psDeleteLookupTableRecords.close();
  psDeleteLookupTableRows.close();
}
catch (SQLException oSqlException) 
{
  Log.print(oSqlException);
} 

您的问题不在显示的代码中。在调用
resultSet.first()
.next()

之前,您在某个地方遇到了一个
resultSet.getInt(..)
。在调用
resultSet.first()
.next()

之前,您在某个地方有一个
resultSet.getInt(..)
。您能否发布方法的代码
UpdateLookupTable.deleteLookupTableRecords()
?您正在那里的
ResultSet
上调用
getInt()
,而在此之前您似乎没有调用
rs.next()
。如果您能够准确地指出异常发生的位置,这会有所帮助。并注释问题中的代码以显示给我们。@PhilippReichart,
delete
语句不会返回结果集。代码为
setint
notGETINT@Johan我从来没有这样说过——stacktrace显然显示了一个
ResultSet
被包含在OP的代码中,但是,这也是
getInt()
发生的地方。UpdateLookupTable.java:118-这是什么stacktrace和代码片段似乎没有任何关联。您能否发布方法的代码
UpdateLookupTable.deleteLookupTableRecords()
?您正在那里的
ResultSet
上调用
getInt()
,而在此之前您似乎没有调用
rs.next()
。如果您能够准确地指出异常发生的位置,这会有所帮助。并注释问题中的代码以显示给我们。@PhilippReichart,
delete
语句不会返回结果集。代码为
setint
notGETINT@Johan我从来没有这样说过——stacktrace显然显示了一个
ResultSet
被包含在OP的代码中,但是,这也是
getInt()
发生的地方。UpdateLookupTable.java:118-有什么